我正在调用 instagram api 以获取带有特定标签的所有图片,第一次它工作正常,它在控制台上向我显示 json,但是当我尝试使用 next_url 再次调用以获取所有图片时我收到此错误:
XMLHttpRequest cannot load https://api.instagram.com/v1/tags/cats/media/recent?callback=jQuery18300975…092&client_id=XXXXXXXXXXXXXXXXXXX&max_tag_id=1395937138154027. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.
这是我正在使用的代码:
var Instagram = {};
// Small object for holding important configuration data.
Instagram.Config = {
clientID: 'XXXXXXXXXXXXXXXXXXX',
apiHost: 'https://api.instagram.com'
};
(function(){
var url;
function search(tag){
generateResource(tag);
$.getJSON(url, toScreen);
}
function generateResource(tag){
url = Instagram.Config.apiHost + "/v1/tags/" + tag + "/media/recent?callback=?&client_id=" + Instagram.Config.clientID;
return url;
}
function toScreen(data){
var next_url=data.pagination.next_url;
console.log(next_url)
if(next_url!=undefined)
{
url=next_url;
pagination(url);
console.log(data);
}
}
function pagination(url)
{
$.getJSON(url, toScreen);
}
Instagram.App = {
search: search
};
}());
$(function(){
Instagram.App.search('cats');
});
最佳答案
您必须为next_url
添加另一个&callback=?
像这样修改并尝试它是否有效:
if(next_url!=undefined)
{
url=next_url + "&callback=?";
pagination(url);
console.log(data);
}
关于javascript - 获取 XMLHttpRequest 无法在第二次 api 调用 Instagram 上加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22683334/