首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >浏览器使用samesite=lax,即使指定了samesite=none

浏览器使用samesite=lax,即使指定了samesite=none
EN

Stack Overflow用户
提问于 2021-11-26 09:47:29
回答 1查看 2.7K关注 0票数 0

我试图嵌入我的角度应用程序到另一个网站通过iframe。在我的角度应用程序中,我正在设置cookie,所以当我尝试将角应用程序嵌入到我的另一个站点时,Devtools显示了一个问题,它告诉我,samesite=none没有被设置,因此正在使用默认的samesite=lax,这就阻止了角度应用程序设置cookies。

之后,我尝试在响应头中设置条目" set -cookie: samesite=none;secure",但没有成功。正如您在下面的屏幕截图中所看到的,浏览器仍然使用“同一个站点=lax”。

这个问题发生在Chrome和Edge(Chromium)上,而在Firefox中则不然。

问题:

  • 我想知道我是否不正确地使用相同的站点设置?
  • 为什么浏览器会在我使用"samesite=none;secure“时向我显示这条消息?

截图

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-27 15:34:04

问题

您误解了Set-Cookie的语法,并且错误地忽略了cookie的名称和值。

cookie定义以名称-值对开始。

因此,当浏览器收到具有以下标题的响应时,

代码语言:javascript
复制
set-cookie: samesite=none; secure

它创建(或更新)一个Secure cookie,其名称为samesite,其值为none。因为没有指定SameSite属性,也因为属性,因此浏览器实际上将产生的cookie标记为SameSite=Lax

解决方案

要解决这个问题,您必须为cookie选择一个名称和一个值,并且必须在任何其他cookie属性之前指定cookie的名称和值:

代码语言:javascript
复制
Set-Cookie: <cookie-name>=<cookie-value>; SameSite=None; Secure
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70122380

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档