2017-10-25 4 views
0

Insbesondere die Cache-Control-Eigenschaft:Beeinträchtigen die web.config-Einstellungen für IIS das Caching von ServiceWorker?

<?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> 

Ich entwickle lokal mit einem Node-Server und alles funktioniert gut, aber auf dem Deployment-Server läuft die App in einer IIS-Instanz und der Serviceworker ist das Caching nicht der angeforderte Vermögenswerte. Es wirft auch keine Fehler auf, also frage ich mich, ob es nur diese "No-Cache" -Deklaration ist, die in die Quere kommt.

Ich bin super neu bei ServiceWorkers und überhaupt kein Devops-Typ. Nicht nach der genauen Lösung suchen, sondern nur versuchen, die Diagnose einzugrenzen, damit ich eine klarere Vorstellung davon habe, was ich meinem Backend-Entwickler fragen soll.

Vielen Dank!

Antwort

1

IIS Cache-Einstellungen haben keine Auswirkungen auf das Caching von Service-Mitarbeitern. Denken Sie daran, dass der Servercode und der Clientcode vollständig entkoppelt sind. Was Sie in IIS einstellen, ist der Cache-Control-Header-Wert. Dieser Wert wird vom Browser-Cache und nicht vom Service-Worker-Cache verwendet. Sie haben zu 100% die Kontrolle darüber, was zwischengespeichert wird und wie lange es im Service-Worker-Cache zwischengespeichert wird.

+1

Ehrfürchtig, das ist es, wovon ich überzeugt sein musste. Vielen Dank! – NominalAeon

+0

mehr als willkommen! –

Verwandte Themen