【发布时间】:2016-12-26 15:59:11
【问题描述】:
我有一个 NodeJS REST API。在那个 API 中,我必须调用另一个 3rd 方 API 来获取一些数据。它为我们提供 JSON 格式的数据。这就是我将数据响应设置为我的 REST url 响应的方式。
request('http://dev.demo.com/api/v1/wow/getFreeviewLoginAndCallAPI/123', function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body);
res.json(body);
}
});
然后我得到这样的回应。
"{\"Response\":{\"@attributes\":{\"Package\":\"MONTHLY\",\"Surname\":\"Taylor\",\"CSN\":\"104801\",\"Email\":\"adam.taylor@gmail.com\",\"MiscInformation\":\"\",\"Message\":\"CUSTOMER_ACTIVE\"}},\"Submission\":{\"@attributes\":{\"SubmitterRef\":\"0778798654\",\"Submitter\":\"demoName\"}}}"
但是,当我在浏览器中使用该第 3 方 URL 时,我会得到一个干净而漂亮的 JSON 输出。像下面这样。
(不带 \ 符号)
没有其他“\”符号而且很干净。我需要做的是我需要访问此响应的一些值。在节点js中。我需要按如下方式发送响应。
res.json(body.Response);
但它是空的。而且我还需要将所有这些值转换为变量。我该怎么做?
【问题讨论】:
-
这看起来像一个字符串。你试过解析它吗? stackoverflow.com/questions/45015/…
标签: javascript json node.js rest