HTTP GET
调用(使用本机http模块),我尝试
JSON.parse()
end
事件被发出。我确信我得到的数据是有效的JSON,但仍然是
JSON.parse
抛出错误。我的记录显示
在应该调用之前调用。
res.on("end", () => {
console.log('Req ended message is', body);
try {
var passport = JSON.parse(body);
} catch (e) {
w.info(
"Cannot parse the response from : " +
process.env.mongo_api_host +
" | error : " +
e
);
}
callback(passport);
return;
});
我的日志显示:
info: Getting MongoDB passport for model : CESI
info: Cannot parse the response from : mongo_api | error : SyntaxError: Unexpected end of JSON input
info: Req ended message is *long valid JSON data*
"Req ended message is : ... stuff"
.
编辑1:
即使把
callback(passport)
res.on("end", () => {
try {
console.log("Req ended message is", body);
var passport = JSON.parse(body);
//TODO What if you get an array ?
if (passport._id) delete passport._id;
callback(passport);
} catch (e) {
w.info(
"Cannot parse the response from : " +
process.env.mongo_api_host +
" | error : " +
e
);
}
return;
});