我正在为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
正在打印出来:
https://tools.ietf.org/html/rfc2629
根据我的理解,要访问normalizedInput
中的数据,我会chunk.normalizedInput
,对吧?为什么它返回undefined?
答案 0 :(得分:1)
您逐行检索字符串,您需要等待流的结尾并在操作对象之前解析字符串
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);
});
});