为啥我收到 TypeError: Failed to fetch?
Posted
技术标签:
【中文标题】为啥我收到 TypeError: Failed to fetch?【英文标题】:why I m getting TypeError: Failed to fetch?为什么我收到 TypeError: Failed to fetch? 【发布时间】:2020-09-18 08:53:36 【问题描述】:我在尝试从 react 应用程序发送数据时收到错误类型。
请注意,我正在使用内核。 它在客户端的本地主机上运行良好,而不是在在线托管时运行良好。
注意:当像这样使用邮递员时,我会从 json 得到结果:
"success":"true",
"ID":"token"
这是expressjs中的后端代码源:
router.post("/sickers/user/login/", cors(), (req, res) =>
var values = req.body;
var pass = values.password;
var email = values.email;
if (pass !== null || pass !== "")
try
con.query("SELECT Password ,ID FROM `sickers` WHERE Email='" + email + "'", function(err, rows, field)
if (err)
console.log(err);
res.send("an error detected try later");
else
try
if (pass == rows[0].Password)
//create the signed function
jwt.sign(rows[0].ID, "secretkey", (err, token) =>
res.json( success: "true", ID: token )
)
//session.session( )
else
res.json( success: "false" );
catch
res.json( success: "false" );
);
catch (e)
res.json( success: "false" );
);
客户端方法是:
//submit values
const submithandler=async (e)=>
e.preventDefault();
try
console.log('start')
await fetch('url/api/sickers/user/login/',
method:'post',
headers:
'Accept': 'application/json',
'Content-Type': 'application/json',
,
body:JSON.stringify(
password:password,
email:email
)
)
.then(response =>
console.log("response");
response.json().then(data =>
console.log(data);
if(data.success=="true")
sessionStorage.setItem('ID',data.ID);
window.location.reload();
seterr("");
else
seterr("try again");
);
);
catch(e)
console.log(e)
我错过了什么吗?
提前致谢。
【问题讨论】:
你能在服务器上添加你的CORS配置吗?在 localhost 上,两个应用程序都通过相同的 DNS (localhost) 进行通信,但如果托管在某种类型的云网络上,如果配置不正确,它们可能位于不同的域上,从而导致 CORS 问题 感谢回复,我会尝试添加权限,我认为这正是问题所在,因为我在我的根目录下没有找到.htaccess文件或者它被隐藏了。 我在 .htaccess 文件中添加了两行用于允许标题,但我注意到我仍然有同样的问题。 【参考方案1】:我之前通过将核心添加到服务器上的 .htaccess 或将整个项目的后端和前端托管到同一台服务器中解决了这个问题。
【讨论】:
以上是关于为啥我收到 TypeError: Failed to fetch?的主要内容,如果未能解决你的问题,请参考以下文章
为啥我收到 TypeError: unsupported operand type(s) for -: 'str' and 'int'
为啥我在实际工作时会收到“Fetch failed loading”?
奇偶校验 GUI 错误(getTransactions TypeError: Failed to fetch)
为啥我收到“TypeError:this.state.users.map is not a function”,用于部署的 React 应用程序的生产版本
为啥我会收到“TypeError: unsupported operand type(s) for -: 'str' and 'str'”错误?