From 8a1ab42dfb62a4bae04ebc82d9996459a20a2935 Mon Sep 17 00:00:00 2001 From: ShiKhu Date: Sat, 7 Aug 2021 17:24:17 +0800 Subject: [PATCH] fix(backend): no cache if not cachable --- backend/pkg/url/assets/css.go | 3 ++- backend/pkg/url/assets/url.go | 8 ++++---- backend/services/http/assets.go | 7 +++++-- scripts/helm/app/storage.yaml | 1 - 4 files changed, 11 insertions(+), 8 deletions(-) diff --git a/backend/pkg/url/assets/css.go b/backend/pkg/url/assets/css.go index d06d62797..633a0f693 100644 --- a/backend/pkg/url/assets/css.go +++ b/backend/pkg/url/assets/css.go @@ -71,7 +71,8 @@ func ResolveCSS(baseURL string, css string) string { func (r *Rewriter) RewriteCSS(sessionID uint64, baseurl string, css string) string { css = rewriteLinks(css, func(rawurl string) string { - return r.RewriteURL(sessionID, baseurl, rawurl) + url , _ := r.RewriteURL(sessionID, baseurl, rawurl) + return url }) return strings.Replace(css, ":hover", ".-asayer-hover", -1) } diff --git a/backend/pkg/url/assets/url.go b/backend/pkg/url/assets/url.go index ea7d45ac7..0905677b6 100644 --- a/backend/pkg/url/assets/url.go +++ b/backend/pkg/url/assets/url.go @@ -82,14 +82,14 @@ func GetCachePathForAssets(sessionID uint64, rawurl string) string { } -func (r *Rewriter) RewriteURL(sessionID uint64, baseURL string, relativeURL string) string { +func (r *Rewriter) RewriteURL(sessionID uint64, baseURL string, relativeURL string) (string, bool) { // TODO: put it in one check within GetFullCachableURL if !isRelativeCachable(relativeURL) { - return relativeURL + return relativeURL, false } fullURL := ResolveURL(baseURL, relativeURL) if !isCachable(fullURL) { - return relativeURL + return relativeURL, false } u := url.URL{ @@ -98,6 +98,6 @@ func (r *Rewriter) RewriteURL(sessionID uint64, baseURL string, relativeURL stri Scheme: r.assetsURL.Scheme, } - return u.String() + return u.String(), true } diff --git a/backend/services/http/assets.go b/backend/services/http/assets.go index 6a1e57243..8ed625859 100644 --- a/backend/services/http/assets.go +++ b/backend/services/http/assets.go @@ -21,8 +21,11 @@ func sendAssetsForCacheFromCSS(sessionID uint64, baseURL string, css string) { func handleURL(sessionID uint64, baseURL string, url string) string { if cacheAssets { - sendAssetForCache(sessionID, baseURL, url) - return rewriter.RewriteURL(sessionID, baseURL, url) + rewrittenURL, isCachable := rewriter.RewriteURL(sessionID, baseURL, url) + if isCachable { + sendAssetForCache(sessionID, baseURL, url) + } + return rewrittenURL } return assets.ResolveURL(baseURL, url) } diff --git a/scripts/helm/app/storage.yaml b/scripts/helm/app/storage.yaml index 3da7de460..836deab4a 100644 --- a/scripts/helm/app/storage.yaml +++ b/scripts/helm/app/storage.yaml @@ -43,4 +43,3 @@ env: KAFKA_SERVERS: kafka.db.svc.cluster.local:9092 KAFKA_USE_SSL: false LICENSE_KEY: "" - \ No newline at end of file