这段代码有什么问题?我想把我的头发拔掉!我从 Instagram API 获取 JSON。控制台日志记录只是 body 给了我 JSON,但是当我执行 body.data 或 body.pagination 之类的操作时,我什么也得不到!请帮忙,谢谢。
var express = require("express"),
app = express(),
https = require("https"),
fs = require("fs"),
request = require("request");
request("https://api.instagram.com/v1/tags/nofilter/media/recent?access_token=xxxxx&scope=public_content&count=1", function(error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body) // returns all the relevant JSON
console.log(body.data) // **returns undefined!!!!!**
}
}).pipe(fs.createWriteStream("./test.txt"))
最佳答案
body
字面意思就是它在 jar 头上所说的 - HTTP 响应的正文。换句话说,它是一个字符串 - 您需要通过 JSON.parse
运行它才能实际将其作为对象进行访问。
console.log(JSON.parse(body).data);
显然,如果您要真正使用它,您会将解析后的对象分配给一个变量,而不是每次访问它时都运行它。
关于javascript - 这个 Instagram API 调用有什么问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37716492/