CORS - 服务器端cookie未在Chrome浏览器上保存

Swa*_*eek 5 javascript cookies ajax cors

有一个节点服务器在接受用户的正确凭证时,护照js按照set-cookie的名称在请求头中创建并发送会话cookie.

但是当我从我的Chrome浏览器执行ajax请求时接受请求它不会在客户端添加cookie.因此,当从客户端生成新请求时,服务器不会对其进行身份验证并抛出401.

我很困惑这是一个浏览器问题还是我从AJAX请求中遗漏了一些东西

请帮忙.

Swa*_*eek 2

感谢您的回答。我正在尝试withCredentials,但会话 cookie 没有在我的本地设置。

我发现的原因是允许的起源。我需要在后端设置允许的来源。

如果使用凭据属性传递,则 XHR 是一个安全请求。因此,客户端浏览器仅在允许的来源与请求来源匹配时才保存 cookie。

因此,简单的解决方法是将主机更改为与允许的 origin 匹配的主机。

在节点端我需要这样做origin: 'domain.com' ,在前端我需要将我的服务器(localhost)设置为指向 test.domain.com。和宾果游戏。有效。!