gpt4 book ai didi

http - set-cookie header 未在 Edge 中设置 cookie

转载 作者:可可西里 更新时间:2023-11-01 16:35:54 25 4
gpt4 key购买 nike

我正在本地测试应用程序并正在向 http://localhost:3000/api/auth/login 发出授权请求.带有 JWT 身份验证 token 的响应中会返回一个 set-cookie header 。 JWT 看起来像:

JWT-TOKEN=[really long alphanumeric string];Version=1;Comment=;Domain=;Path=/;Max-Age=3600;;HttpOnly

之后,我正在向 http://localhost:3000/api/other/resource 发出另一个请求并收到未经授权的错误,因为它需要请求中包含 JWT token 的 cookie。

Cookie 在 Firefox、Safari 和 Chrome 中设置,但在 Edge 中不设置。 Edge 开发工具控制台中没有任何错误。知道为什么没有在 Edge 中设置 cookie 吗?

最佳答案

我找到了适合我的情况的答案。

我们在客户端使用 fetch。在一些较旧的浏览器中, native 获取实现将默认为 credentials: "omit", 而较新的浏览器默认为 credentials: "same-origin"

因此,添加此选项似乎允许 Edge 在获取请求中接收 cookie,例如

fetch('/users', {
credentials: 'same-origin'
})

https://github.com/github/fetch#sending-cookies以供引用。尽管有标题名称,但“省略”将禁用发送和接收 cookie。

关于http - set-cookie header 未在 Edge 中设置 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50456797/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com