#javascript #facebook #facebook-graph-api
#javascript #Facebook #facebook-graph-api
Вопрос:
Я пытаюсь получить доступ к определенным альбомам по их местоположению со страницы Facebook с помощью вызова graph API и в конечном итоге отобразить их на веб-странице.
По сути, я думаю, что мне нужно выполнить цикл по объекту, который Facebook отправляет обратно (в данном случае ответ), и хранить только объекты, которые содержат подстроку «Germany» в описании местоположения, в переменной albums. В настоящее время в консоли ничего не происходит, когда я запускаю метод.
Я как бы застрял на этом этапе, я могу выполнять вызовы API и возвращать их с определенной страницы с помощью других функций, поэтому мое разрешение, похоже, в порядке, я просто неправильно структурирую эту функцию (я думаю, я относительно новичок в JS и Jquery).
model.getPhoto = (function(data){
var albums;
FB.api(
'/--USER ID GOES HERE--/albums',
'GET',
{"fields":"link,location"},
function(response){
for (var i=0; i<response.length; i ){
if (response.albums.location[i] = "Germany"){
albums = response.albums.location[i];
i ;
}
console.log(albums);
}
}
);
});
Ответ №1:
Вы устанавливаете model.getPhoto в качестве новой функции. Если ваш код завершен, вы никогда не вызываете эту функцию. Я добавил несколько строк, затем вы можете попытаться исправить и увидеть некоторые результаты… Также изменены некоторые строки, созданы альбомы в виде массива и помещены i
за if
пределы для корректного выполнения цикла for. Последняя строка вызывает вашу функцию.
model.getPhoto = (function(data){
FB.api('/--USER ID GOES HERE--/albums',
'GET',
{"fields":"link,location"},
function(response){
var albums = new Array();
for (var i=0; i<response.length; i ){
if (response.albums.location[i] == "Germany"){
albums.push(response.albums.location[i]);
}
i ;
console.log(albums);
}
});
});
model.getPhoto({var1: "value1"});
Я предлагаю вам больше играть с javascript и логикой, заглянуть в некоторые библиотеки, такие как сам jQuery, поскольку вы его здесь не используете, просто чистый JS, и получайте удовольствие!
Редактировать
При сравнении вы должны использовать == вместо =
Лучший, Эдер
Комментарии:
1. Спасибо за помощь!