我正在对 Google Civic 的 API 执行 GET
http 请求,其中我提供一个地址并根据所提供的地址所在位置接收美国政府成员的信息。
//var options has the host, path, etc.
var req = https.request(options, function(res) {
console.log('STATUS: ' + res.statusCode);
res.setEncoding('utf8');
res.on('data', function (chunk) {
console.log(chunk.normalizedInput) //returns 'undefined'
});
});
chunk
正在打印此内容:
据我了解,要访问 normalizedInput
中的数据,我会执行 chunk.normalizedInput
,对吗?为什么它返回未定义?
最佳答案
通过流获取字符串,需要等待流结束并解析字符串才能操作对象
var req = https.request(options, function(res) {
console.log('STATUS: ' + res.statusCode);
var chunks = [];
res.setEncoding('utf8');
res.on('data', function (chunk) {
chunks.put(chunk);
});
res.on('end', function () {
console.log(JSON.parse(chunks.join("")).normalizedInput);
});
});
关于javascript - 访问 JSON 格式的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40015911/