【问题标题】:Cookies are not included when using withCredentials in XMLHttpRequest在 XMLHttpRequest 中使用 withCredentials 时不包含 Cookie
【发布时间】:2019-12-08 21:25:27
【问题描述】:

这是我的场景:

我正在从foo.comapi.bar.com 发出一个ajax 请求。在响应中,它使用Set-Cookie 标头设置一些cookie。 set-cookie 标头上的域是.bar.com。我正在使用此处列出的所有步骤How to make XMLHttpRequest cross-domain withCredentials, HTTP Authorization (CORS)?

我能够看到并验证(使用 Chrome 扩展程序 EditThisCookie)为域 .bar.com 正确设置了 cookie。

据我了解,当我向cdn.bar.com 发出ajax 请求(使用withCredential:true)时,它应该包含之前为域.bar.com 设置的cookie。

这些 cookie 没有包含在请求中,我可以在 fiddler 中看到它。我在这里错过了什么?

编辑

如果我从源 app.bar.comcdn.bar.com 发出请求,Cookie 会包含在请求标头中。该问题仅在从不同来源foo.com 调用时出现。

【问题讨论】:

    标签: javascript ajax cookies xmlhttprequest


    【解决方案1】:

    问题在于 cookie 的 SameSite 限制。如果我将它从 lax 更改为 No Restriction 那么它工作正常。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-09
      • 2014-07-16
      • 2022-11-26
      • 1970-01-01
      • 2014-11-09
      • 2012-12-06
      相关资源
      最近更新 更多