我试图通过Instagram API获取我所有关注者和我在Instagram上关注的所有人的列表。我认为每当我试图找到我的粉丝时,我的回复都会返回null。
这是我得到的错误:
无法读取属性'长度'未定义的
这是对response.data.length
的引用这是我的app.js:
window.Instagram = {
/**
* Store application settings
*/
config: {},
BASE_URL: 'https://api.instagram.com/v1',
init: function(opt) {
opt = opt || {};
this.config.client_id = opt.client_id;
},
/**
* Get a list of popular media
*/
popular: function(callback) {
var endpoint = this.BASE_URL + '/media/popular?client_id=' + this.config.client_id;
this.getJSON(endpoint, callback);
},
/**
* Get a list of recently tagged media
*/
tagsByName: function(name, callback) {
var endpoint = this.BASE_URL + '/tags/' + name + '/media/recent?client_id=' + this.config.client_id;
this.getJSON(endpoint, callback);
},
followers: function(callback) {
var endpoint = this.BASE_URL + '/users/self/follows?access_token=' + this.config.access_token;
this.getJSON(endpoint, callback);
},
getJSON: function(url, callback) {
$.ajax({
type: 'GET',
url: url,
dataType: 'jsonp',
success: function(response) {
if (typeof callback === 'function') callback(response);
}
});
}
}
Instagram.init({
client_id: 'CENSORED',
access_token: 'CENSORED'
});
$(document).ready(function() {
Instagram.followers(function(response) {
var $instagram = $('#instagram');
$instagram.append('<textarea cols="1" rows="' + response.data.length + '">')
for (var i = 0; i < response.data.length; i++) {
var name = response.data[i].username;
$instagram.append(name + ' ');
}
$instagram.append('</textarea>');
});
});
答案 0 :(得分:1)
您是否处于沙盒模式?如果是这样,预计会得到空响应,请阅读有关沙盒模式的文档:https://www.instagram.com/developer/sandbox/
(另外我注意到你有'/media/popular?client_id='
的代码,截至2016年6月1日,流行的API已被弃用,所以你可能正在使用一些旧的Instagram库代码。 - 你需要阅读更新的文档并重新实现一切)