发送Cookie作为响应,但未设置?

问题描述 投票:0回答:1

我正在尝试通过我正在编写的API的响应传递HttpOnly cookie。目的是使cookie充当刷新令牌,以实现React中SPA的silent refresh的目的。

在我的控制器方法中,我有以下代码:

response.set_cookie(
  :foo,
  {
    value: 'testing',
    expires: 7.days.from_now,
    path: '/api/v1/auth',
    secure: true,
    httponly: true
  }
)

我正在使用fetch命令向此操作发出发布请求,如下所示:

fetch("http://localhost:3001/api/v1/auth", {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    email: '[email protected]',
    password: '123456',
  })
})

不确定这是否重要,但我想知道在XHR响应中传递cookie是否无效?但是,正如您在我的回复中看到的那样,这似乎正在起作用:

Set-Cookie: foo=testing; path=/api/v1/auth; expires=Sun, 26 Jan 2020 05:15:30 GMT; secure; HttpOnly

也在Network下的Cookies标签中,我得到了:Network -> Cookies tab

但是,我没有在Application -> Cookies下设置Cookie:Cookies not showing up

为了澄清,React应用位于localhost:3000上,并且Rails后端正在监听localhost:3001

有什么想法吗?

ruby-on-rails cookies rails-api
1个回答
0
投票

一旦我尝试在会话中存储一些数据。它没有在浏览器会话中显示为您的会话,但是当我通过byebug测试它时,它已经存储了。

© www.soinside.com 2019 - 2024. All rights reserved.