我有一个网站从另一个网站加载资源。我已经能够确定:
我想知道是否可以从网站上提供某种标头或其他指令,这些标头或指令对用户的效果与禁用第三方Cookie的效果相同,但不要求用户删除第三方Cookie和猴子一起浏览设置。
[通常,无法阻止您的浏览器在HTTP请求中包含cookie。但是,最近,向浏览器添加了一些获取资源的新方法。
使用Fetch API: fetch
忽略响应中的Set-Cookie
,除非指定,否则不包括Cookie
。
使用ES6(ES2015)模块:没有<script type="module" ...>
属性的crossorigin
将不会发送Cookie
。它不适用于非模块脚本,并且必须配置服务器(而不是您的服务器,一个用于服务文件),以使用有效的CORS标头为文件提供服务。用import * from blah.com/script.js
导入的脚本也将以相同的方式运行。按照link了解更多信息。
crossorigin="anonymous"
:资源元素,例如script
,img
和style
和crossorigin="anonymous"
将在后续请求中不包含Cookie
标头。但是所有这些都通过使用Cross-Origin Resource Sharing (CORS)起作用,并且如果将资源服务器配置为不允许没有凭据(cookie和其他标头)的请求,则它们将不起作用。您可能会收到404或其他错误。
如果您担心第三方Cookie,通常最好从您自己的服务器或像大多数CDN一样的无cookie的服务器中提供静态信息。