1

我已通过将以下内容添加到 webconfig 来启用 CORS,但它似乎无法始终如一地工作:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <httpProtocol>
      <customHeaders>
        <add name="Access-Control-Allow-Origin" value="*" />
      </customHeaders>
    </httpProtocol>
  </system.webServer>
</configuration>

如果我们在请求中添加“Origin”标头,它会在响应中显示 Access-Control-Allow-Origin:* 标头。但是,如果我们不在请求中添加“Origin”标头,则服务器不会返回 Access-Control-Allow-Origin:* 标头。

问题是,我正在使用 sw-toolbox 预缓存静态资源。但是如果一个资源比如javascript文件在Service Worker激活之前已经在浏览器缓存中,例如在html页面中直接引用该文件并且浏览器已经下载并缓存了该文件,那么Service Worker尝试预缓存时会显示CORS错误那个文件。

4

0 回答 0