Javascript 客户端中的NodeJS和Express读取JSON响应
我试图用Express做一个简单的服务器,但是我很难读取作为响应的一部分发送给客户端的信息 这是我在服务器中的一个端点:Javascript 客户端中的NodeJS和Express读取JSON响应,javascript,node.js,json,express,Javascript,Node.js,Json,Express,我试图用Express做一个简单的服务器,但是我很难读取作为响应的一部分发送给客户端的信息 这是我在服务器中的一个端点: app.post('/click',(req, res) =>{ res.status(200).json({'message' : 'You clicked the button!'}); } 这是使用该端点向服务器发出请求的客户端: button.addEventListener('click', function(e) { fetch('/click
app.post('/click',(req, res) =>{
res.status(200).json({'message' : 'You clicked the button!'});
}
这是使用该端点向服务器发出请求的客户端:
button.addEventListener('click', function(e) {
fetch('/click', {method: 'POST'})
.then(function(response) {
if(response.ok) {
return response.json()
}
throw new Error('Request failed.');
})
.then(function(data){
var serverInfo = JSON.parse(data)
})
.catch(function(error) {
console.log(error);
});
});
这不起作用,尝试了一些其他方法,比如不使用JSON.parse,但仍然不起作用,
你知道如何在客户端读取服务器响应吗?有一个输入错误
返回响应。json
应该是返回响应。json()
。试试这个
小提示:不要在中处理错误,然后使用捕获块抛出错误;)
快速查看fetch,您调用了错误的端点
/test/success
而不是/单击
希望是这样,
干杯 ”/点击“
”/test/success“
是不是?编辑问题并修复路线后-您看到的实际错误是什么?这不是错误,如果我没有说明,很抱歉。问题是,我无法在客户端中获取值为“youclickedthebutton”的字符串。我不知道如何访问我发送的值抱歉,这是在写问题时输入的错误:)抱歉,这是在写问题时输入的错误,没有解决问题:(
button.addEventListener('click', function(e) {
fetch('/test/success', {method: 'POST'})
.then(function(response) {
return response.json()
})
.then(function(data){
console.log('Do what you want => ', data)
})
.catch(function(error) {
console.log(error);
});
});