aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStruan Donald <struan@exo.org.uk>2020-10-09 09:57:24 +0100
committerStruan Donald <struan@exo.org.uk>2020-10-09 09:57:24 +0100
commitfc4071d089a61de05bbc88dbd8849fa92fa4b72e (patch)
tree8cda5b227853c9cb595b7f987e3d9d3ee3c510a9
parent2d87d6bf7c7fa4eae0e098586a0efe04c5d866fe (diff)
do not cache the service worker
As the contents of the service worker vary depending on if the user is logged in don't cache it.
-rw-r--r--CHANGELOG.md1
-rw-r--r--perllib/FixMyStreet/App/Controller/Offline.pm1
-rw-r--r--t/app/controller/offline.t1
3 files changed, 3 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index ac1958e86..e2914f303 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -36,6 +36,7 @@
- Do not strip spaces from middle of Open311 category codes. #3167
- Show all category history even if category renamed.
- Fix email alert on initial update template.
+ - Do not cache the service worker
- Admin improvements:
- Display user name/email for contributed as reports. #2990
- Interface for enabling anonymous reports for certain categories. #2989
diff --git a/perllib/FixMyStreet/App/Controller/Offline.pm b/perllib/FixMyStreet/App/Controller/Offline.pm
index adb3de14d..af05c585f 100644
--- a/perllib/FixMyStreet/App/Controller/Offline.pm
+++ b/perllib/FixMyStreet/App/Controller/Offline.pm
@@ -22,6 +22,7 @@ Offline pages Catalyst Controller - service worker handling
sub service_worker : Path("/service-worker.js") {
my ($self, $c) = @_;
+ $c->res->headers->header('Cache-Control' => 'max-age=0');
$c->res->content_type('application/javascript');
}
diff --git a/t/app/controller/offline.t b/t/app/controller/offline.t
index 876475264..d48af676f 100644
--- a/t/app/controller/offline.t
+++ b/t/app/controller/offline.t
@@ -54,6 +54,7 @@ FixMyStreet::override_config {
subtest 'service worker' => sub {
$mech->get_ok('/service-worker.js');
+ is $mech->res->header('Cache-Control'), 'max-age=0', 'service worker is not cached';
$mech->content_contains('translation_strings');
$mech->content_contains('offline/fallback');
};