我正在尝试使用新的Fetch API,但在处理Cookies时遇到了麻烦。具体来说,在成功登录后,未来的请求中有一个Cookie头,但是Fetch似乎忽略了这个头部,我使用Fetch发出的所有请求都是未经授权的。
这是因为Fetch还没有准备好,还是Fetch不支持Cookies?
我使用Webpack构建我的应用程序。我还在React Native中使用Fetch,但没有遇到同样的问题。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
除了@Khanetor的答案之外,对于那些正在处理跨域请求的人来说,可以使用
credentials: 'include'示例的JSON fetch请求:
fetch(url, { method: 'GET', credentials: 'include' }) .then((response) => response.json()) .then((json) => { console.log('Gotcha'); }).catch((err) => { console.log(err); });https://developer.mozilla.org/en-US/docs/Web/API/Request/credentials
默认情况下,Fetch不使用cookie。要启用cookie,请执行以下操作:
fetch(url, { credentials: "same-origin" }).then(...).catch(...);