gpt4 book ai didi

javascript - 从 Node JS 服务器读取响应

转载 作者:行者123 更新时间:2023-11-30 21:01:18 25 4
gpt4 key购买 nike

我正在开发一个程序,该程序将在服务器端编译特定的 Java 文件,如果编译过程中出现任何错误,我将捕获错误信息并将其发送回客户端。但是,我尝试了很多方法来读取 JSON 对象,但都无济于事。

所以我的问题是为什么我无法在客户端读取服务器发送的错误字符串?我目前正在使用 res.data.err 来读取我的错误响应。

服务器端代码

var cmd=require('node-cmd');
exports.compileTest = function(req,res){

console.log(req.body.data.fileName);
var file = req.body.data.fileName;
var output = "";
output = cmd.get(
'javac solutionTest/'+file,
function(err, data, stderr){

if (err) {
console.log(err);

res.json({ state : 0 ,err});
}
else
res.json({ state : 1});
}
);

}

客户端代码

 $scope.compileSol = function(){
$http.post('/testRun', { data : { fileName : $scope.solutionFileName.name}
}).then(function(res){
if(res.data.state==0){
alert(res.data.err);

}
}).catch(function(error){
});
}

下面是我想发送给网络浏览器的错误

enter image description here

最佳答案

我假设您从服务器发送的 err 变量是一个 JSON 对象,其键为:err。如果没有,你可以考虑修改它,我下面的方法。

  if (err) {
console.log(err);

res.json({ state : 0 ,err: err});
}
else
res.json({ state : 1});
}

您客户端的对象响应应该与您发送它的方式具有相同的形式。在您从服务器发送它的方式中,您应该可以通过这种方式在客户端访问它:

if(res.state==0){
alert(res.err);

}
}).catch(function(error){
});

关于javascript - 从 Node JS 服务器读取响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47122674/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com