此端点设置一个 cookie,然后重定向到 cookie 列表:
https://httpbin.org/cookies/set/king/cole
当我在浏览器中访问那里时,我得到了预期的结果:
{
"cookies": {
"king": "cole"
}
}
在浏览器控制台中得到相同的结果:
const res = await fetch('https://httpbin.org/cookies/set/king/cole')
await res.json()
// -> { cookies: { king:cole }}
但是,如果我在 Node 中执行这些行,我会得到一个空集:
// Welcome to Node.js v20.12.0.
// Type ".help" for more information.
const res = await fetch('https://httpbin.org/cookies/set/king/cole')
await res.json()
// -> { cookies: {} }
在获取中添加
credentials: 'include'
没有帮助(并且应该没有必要?)
我怎样才能让它发挥作用?
默认情况下,Nodejs 不会为您维护 cookie。您必须手动执行此操作。
因此,您发送第一个请求:https://httpbin.org/cookies/set/king/cole并取回cookie,但是当它重定向到https://httpbin.org/cookies时, Nodejs 不会在该重定向上将之前的 Cookie 发送回服务器。 因此,服务器收到的重定向请求中没有 cookie。