跨域:缓存清单本身

时间:2015-06-06 10:00:50

标签: javascript caching browser-cache

我最近开始构建一个在移动设备上完全脱机运行的Web应用程序。

我们的设置如下:

  • CMS和API在域A上运行EC2服务器;
  • 资产将发布到域B上的S3存储桶;
  • 网络应用程序托管在域C上的S3静态网站存储桶中。

我无法跨越缓存清单本身(因为它是一个动态文件,其位置无法更改)。

如何在不更改cache.manifest文件位置的情况下缓存文件?

1 个答案:

答案 0 :(得分:0)

清单允许使用W3C says跨域:

  

manifest-src和default-src指令控制用户代理可以从中获取清单的来源。与其他指令一样,默认情况下manifest-src指令是*,这意味着用户代理可以[CORS]允许,获取清单跨域。想要为各种Web应用程序托管清单的远程源(例如,CDN)将需要在其HTTP响应中包括适当的[CORS]响应头(例如,Access-Control-Allow-Origin:https://example.com)。 / p>

您可以检查清单中是否存在Access-Control-Allow-Origin响应标头。例如:

HTTP/1.1 200 OK
[...]
Access-Control-Allow-Origin: http://example.com
[...]