В частности, свойство управления кешем:
<?xml version="1.0"?>
<configuration>
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Cache-Control" value="no-cache" />
</customHeaders>
</httpProtocol>
<staticContent>
<remove fileExtension=".json" />
<mimeMap fileExtension=".json" mimeType="application/json; charset=utf-8"/>
</staticContent>
</system.webServer>
</configuration>
Я разрабатываю локально с сервером Node, и все работает нормально, но на нашем сервере развертывания приложение запускается в экземпляре IIS, и ServiceWorker не кэширует запрошенные активы. Это также не вызывает ошибок, поэтому мне интересно, не помешает ли это простое объявление "no-cache".
Я супер новичок в ServiceWorkers и вовсе не парень детонов. Не охотясь за точным решением, просто пытаясь сузить диагноз, поэтому я имею более ясное представление о том, что спросить у моего стороннего разработчика.
Спасибо!
Настройки кэша IIS не влияют на кэширование сервисных работников. Помните, что код сервера и код клиента полностью разделены. То, что вы устанавливаете в IIS, - это значение заголовка Cache-Control. Это значение используется кешем браузера, а не кешем обслуживающего персонала. Вы на 100% контролируете то, что получает кеширование, и как долго он кэшируется в кеше обслуживающего персонала.