请求静态内容时避免使用cookie

时间:2010-05-31 12:25:09

标签: asp.net cookies webserver

我刚刚使用Google Chrome的开发者工具审核了我的一个Web应用程序页面(使用ASP.Net构建并在开发服务器上运行)。一个特别的警告引起了我的注意:

从无Cookie域提供静态内容(5)

我想知道是否可以避免这些请求的cookie。我发现javascript文件也没有cookie请求。我可以避免这些文件的标题中的cookie吗?为什么浏览器没有附加javascript文件的cookie并附加CSS和图像?

2 个答案:

答案 0 :(得分:2)

Cookie“附加”到域和路径。如果您为文件上方的路径设置了cookie,那么它们将随这些文件的任何请求一起发送。

警告消息本身告诉您如何解决此问题 - 将另一个域用于静态内容。或者是子域名,只要您确保在这种情况下保持主域名无Cookie。

答案 1 :(得分:0)

最简单的方法是遵循您粘贴的警告消息中的确切建议(从您未设置 cookie 的完全不同的主机名提供静态资产)。但是在现代浏览器中,您现在还可以选择在相关元素上设置 crossorigin="anonymous" 属性,这将阻止为匹配请求发送 cookie。您需要将此与在静态资产响应中返回 access-control-allow-origin: YOUR-ORIGIN-HERE.com 标头结合起来。