快递 - 处理JSON响应
问题描述:
我有两个节点服务器(A + B),都使用Expressjs。快递 - 处理JSON响应
从一个我用的请求(https://github.com/mikeal/request)做一个GET请求对方:
//A server
app.get('/:id', function(req, res) {
request('http://localhost:8080/api/' + req.params.id, function (error, response, body) {
console.log(body);
})
});
,另一个是:
//B server
app.get('/api/:id', function(req, res) {
res.json(200, {url: "http://www.google.co.uk"});
});
正如你所看到的,正在请求到B和B返回一个json结果。但是,我不知道如何处理A中的响应。console.log(body)
打印完整的json,但是如何访问从B发送的url?
我已经试过body.url
但没有运气
答
的JSON
结果是一个字符串。你必须通过JSON.parse
首先对其进行解析,访问它像一个对象之前:
var url = JSON.parse(body).url;
尝试JSON.parse的结果,访问它就像一个对象之前。 – levi
这是做的伎俩 - 把它作为一个答案,如果你喜欢,我会打勾 – tommyd456