我还有一个关于Node的简单问题。我正在尝试向Open Courseware搜索API(http://www.ocwsearch.com/api)发出一个简单的http请求,但是我遇到了一些实际解析JSON的问题...这通常不是问题。 请求返回一个带有转义字符和斜杠的字符串,因此我在响应字符串上运行了一个替换和一个unescape,但这最终会返回类似'[object Object]'的内容。现在,我真正想做的就是能够看到最终被返回的内容,所以我可以判断我是否可以最终将其解析为有效的JSON。不幸的是,这也没有用。我已经阅读了几个类似的堆栈溢出线程,但我仍然无法让它工作。
我尝试了什么:
[
0
B'/ P>
... 一直到最后(])
将x作为返回的格式化对象,
这些似乎都不起作用,它们都归还给我[object Object]。
我甚至在jsfiddle中试过它:http://jsfiddle.net/S47QL/2/ 我正在用alert替换console.log,似乎是重新
我的代码:
var request = require('request');$
request('http://www.ocwsearch.com/api/v1/search.json?q=' + skill + '&contact=http%3a%2f%2fwww.ocwsearch.com%2fabout/',$
function(error, response, body){$
if(!error && response.statusCode == 200){~$
console.log(response.toString().replace(/\\\//g, "/"));$
var x = response.toString().replace(/\\\//g, "/");$
console.log(x)$
console.log(x.keys());$
}$
});$
答案 0 :(得分:1)
现在,我真正想做的就是能够看到最终被返回的内容,所以我可以判断我是否可以最终将其解析为有效的JSON。
然后在浏览器窗口中发出请求(使用Chrome,您可以在检查器标签中看到实际结果 - 按F12键)。
示例:http://www.ocwsearch.com/api/v1/search.json?q=ios&contact=http%3a%2f%2fwww.ocwsearch.com%2fabout/
根据http://jsonlint.com/,这是有效的JSON返回。你肯定你是不是想要为自己的利益过于聪明?
您无法将响应写入字符串,因为它是一个对象。您需要返回的数据,但我认为body字段可以满足您的需求。您是否尝试过打印body
?