我正在使用jQuery从Instagram JSON中获取媒体。我想访问两个大多数媒体。所以在他们的JSON媒体数组中,它将是[0]和[1]。但我遇到了以下问题:
$.getJSON(`https://www.instagram.com/${handle0}/?__a=1`, function (data) {
var content = data.user.media.nodes;
for (var i = 0; i < 2; i++) {
var code = content[i].code;
var igUrl = `https://www.instagram.com/p/${code}`;
var contentUrl = '';
console.log("here", i)
if (content[i].is_video === true) {
$.getJSON(`https://www.instagram.com/p/${code}/?__a=1`, function (data) {
console.log("video", i)
contentUrl = data.graphql.shortcode_media.video_url;
$('#content' + i).attr('href', igUrl).append(`<video autoplay loop muted><source src = ${contentUrl} type="video/mp4" ></video>`)
})
} else {
contentUrl = content[i].thumbnail_src;
console.log("image", i)
$('#content' + i).attr('href', igUrl).append(`<img src = ${contentUrl}>`)
}
}
})
我的console.log(“video”,i)每次返回2,即使我为i指定的for循环不大于2。
我的console.log(“here”,i)记录0,1,如果图像是图像,我的console.log(“image”,i)也会正确记录。
如果这个问题令人困惑,请告诉我。