我正在使用fetch API在我的 React 应用程序中。该应用程序部署在服务器上并且运行良好。我测试了多次。但是,应用程序突然停止工作,我不知道为什么。问题是,当我发送 get
请求时,我收到了来自服务器的有效响应,但 fetch API 也捕获了异常并显示 TypeError: Failed to fetch
。我什至没有对代码进行任何更改,这是所有 React 组件的问题。
我收到了有效的回复:
但同时也收到此错误:
fetch(url)
.then(res => res.json())
.then(data => {
// do something with data
})
.catch(rejected => {
console.log(rejected);
});
当我删除凭据:“include”时,它可以在本地主机上运行,但不能在服务器上运行。
我尝试了 StackOverflow 和 GitHub 上给出的所有解决方案,但它对我来说不起作用。
最佳答案
这可能是您从后端收到的响应存在问题。如果它在服务器上工作正常,那么问题可能出在响应 header 中。
检查响应 header 中 Access-Control-Allow-Origin
的值。通常,当响应 header 的 Access-Control-Allow-Origin
与请求的来源不匹配时,即使收到响应,fetch API 也会抛出无法获取的错误。
关于javascript - 当请求实际上没有失败时获取 "TypeError: Failed to fetch",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49343024/