我正在尝试从节点js服务器向GET调用发送json响应。 我正在创建一个json,如下所示
var request = require('request');
var parseString = require('xml2js').parseString;
env.server.get('localhost:3000/details', function(req, res) {
if (req.query.code) {
request.get({
url: 'http://www.example.com/net2/getDetails?code=' + req.query.code
}, function(err, result, body) {
if (err) {
console.log('error :' + err);
res.status(404).json({
infoMsg: "Error"
});
} else if (result.statusCode == 200) {
var resultBody = {};
parseString(body, function(e, parsedResult) {
resultBody["userName"] = parsedResult.userName;
resultBody["userDept"] = parsedResult.department;
resultBody["userCat"] = parsedResult.category;
res.send(resultBody);
});
}
})
} else {
console.log('Request failed .');
}
});
我期待的结果需要采用这种格式
{
"name": "test",
"dept": "dept1",
"cat": "cat2"
}
但我得到的回应是这种格式
{
"status": "success",
"data": {
"name": "test",
"dept": "dept1",
"cat": "cat2"
}
}
如何创建一个符合预期格式的响应,即没有添加状态和数据,我哪里出错。
答案 0 :(得分:1)
如果您使用JSON
请求Ajax Request
,则status
字段是'res'的原始部分,无法移除。