我在客户端上使用提取API:
fetch("http://localhost:3000/buy", {
method: 'POST', // or 'PUT'
body: JSON.stringify({value:input.value}), // data can be `string` or {object}!
headers: {
'Content-Type': 'application/json'
}
}).then(res => res.json())
.then(response => console.log('Success:', JSON.stringify(response)))
.catch(error => console.error('Error:', error));
在我的服务器端,我有:
app.post('/buy' , ( req , res ) => {
res.send({status:200,redirect:'asd'});
})
但是客户端代码未接收任何数据,我是否忽略了某些内容,或者为什么会发生这种情况?
感谢帮助。
答案 0 :(得分:0)
您执行以下操作:
res.status(200).json({status:200,redirect:'asd'});
据我所知,res.send发送一个字符串,而res.json发送JSON
尝试在客户端进行一些更改
.then(response => console.log('Success:', response))
您在处理代码中的响应时使用JSON.stringify,但实际上您需要做相反的工作-JSON.parse。在您的代码中,它已经以res.json()的形式完成;因此,您只需要扔掉stringify命令即可。
我刚刚在机器上测试了上面的代码,一切正常。服务器返回响应。
答案 1 :(得分:0)
尝试不使用 JSON.stringify