来自远程 API 的 Set-Cookie 不起作用

asu*_*sky 5 javascript cookies http express

我目前正在进行需要使用 httpOnly cookie 的项目。该项目需要直接调用 API。

假设它对xxx.com/vx/auth/login用户登录尝试进行身份验证。该端点将向客户端提供响应并设置 cookie。像这样的东西:

Set-Cookie:token=eyJ0b2tlbiI6ImV5SmhiR2NpT2lKSVV6STFOaUlzSW5SNWNDSTZJa3BYVkNKOS5leUoxYVdRaU9pSXhNREEwT0RJd05DSXNJbDlwWkNaNkluWXhYM1Z6WlhKekx6RXdNRFE0TWpBMElpd2libUZ0WlNJNklrRm5kVzVuSUZOMWNubGhJRUpoYm1kellTSXNJbVZ0WVdsc0lqb2ljR0ZwYm1GdVpHVnpkR2x1WldSQWVXRm9iMjh1WTI5ddlpd2liR1YyWld3aU9qQXNJbWxoZENJNk1UUTNOek0zTVRnMk55d2laWGh3SWpveE5EYzNOVFEwTmpZc2ZRLmtUN0IzNW9YYjQ2RmU3WWFLYkd4MXhoYkdGUWJ1TFg1U053N3FWSjNfa2siffQ==; expires=Thu, 27 Oct 2016 05:04:27 GMT; path=/; HttpOnly

但是当我查看 时devtools,cookie 没有设置。即使在我刷新几次之后。

我在这里想念什么?我需要创建一个代理来处理这个问题吗?* 我曾经使用代理,效果很好

asu*_*sky 8

通过与后端工程师的协调,我终于设法解决了这个问题:

  1. 从 Access-Control-Allow-Origin 中删除通配符并改用特定的域来源。如果不,
  2. Access-Control-Allow-Credentials: true

在请求中,我设置withCredentialstrue.

注意:如果设置withCredentialstrue,则还必须设置Access-Control-Allow-Credentialstrue。另外,如果您仍然在Access-Control-Allow-Origin.

进一步阅读“使用凭据请求”