【问题标题】:Cypress.io on Chrome with "SameSite by default cookies" issueChrome 上的 Cypress.io 出现“默认 cookie 相同站点”问题
【发布时间】:2020-03-16 20:05:07
【问题描述】:

我们正在使用 Chrome 通过 http:// 在本地运行 Cypress.io,并且当“默认情况下的 SameSite cookie”处于启用状态(他们开始向所有用户推出)时,我们的登录测试失败,因为会话 cookie 无法被设置(因为连接不安全而被阻止)。关于解决方法的任何建议?我研究了按以下方式设置 Chrome 标志:

https://docs.cypress.io/api/plugins/browser-launch-api.html#Examples

带有标志:

https://peter.sh/experiments/chromium-command-line-switches/#unsafely-treat-insecure-origin-as-secure

但找不到合适的标志。谢谢。

【问题讨论】:

    标签: google-chrome session-cookies cypress


    【解决方案1】:

    我最终解决了这个问题,只需将本地/测试环境的会话 cookie 的 samesite 属性从需要 securenone 更改为 lax。希望这对其他人有帮助!

    【讨论】:

    • 您能否举例说明您在何处/如何添加此内容?我目前遇到了同样的问题。谢谢!
    • @emaxsaun 这实际上取决于您使用的编程语言以及创建 cookie 的方式。以 PHP 7 为例:php.net/manual/en/function.setcookie.php#125242。我的应用程序中有一些条件逻辑来确定我是否是本地人,并且我进行了相应的设置。
    • 感谢@erebus,我能够弄清楚(使用赛普拉斯)。
    【解决方案2】:

    我遇到了同样的问题。

    我的解决方案是 chrome://flags(在从 cypress 运行 chrome 之后)并将 SameSite 默认 cookie 设置为已禁用。

    【讨论】:

      猜你喜欢
      • 2020-07-13
      • 1970-01-01
      • 1970-01-01
      • 2014-03-31
      • 2017-01-06
      • 2020-12-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多