为SameSite=Lax
读MDN时说:
允许将cookie与顶级导航一起发送,并将与第三方网站发起的GET请求一起发送。这是现代浏览器中的默认值。
对我来说,听起来像是我可以从第三方发起JavaScript提取操作,只要它是GET,就会发送Cookie。
但是根据this answer,即使GET请求也仅在顶级导航期间发送,即不是从JS发送。
我猜答案是正确的。我真的希望如此,因为我正在尝试保护API,并且只希望在用户导航到第一方站点时发送Cookie,例如,对于Oauth2交互等。SameSite=Strict
对我不起作用,因为如果我链接到第一方服务器上的资源,如果引用者指示导航来自其他地方,则该资源仍被阻止。刷新页面也不起作用。我必须手动导航到URL。
编辑:我刚刚测试了这一点,并且行为符合我的期望。 Cookies不会与SameSite=Lax
一起发送。我是唯一一个被MDN措辞感到困惑的人吗?