Facebook jQuery AJAX JSON call - Uncaught SyntaxError: Неожиданный токен: - PullRequest
1 голос
/ 08 ноября 2010

Я пытаюсь получить данные JSON из Facebook, используя следующий код:

var getFriends = function() {
    var friendsURL = 'https://graph.facebook.com/<?= $cookie['uid'] ?>/friends?access_token=<?= $cookie['access_token'] ?>&jsoncallback=?';

    $.getJSON(friendsURL, function(data) {

        var names = "";

        $.each(data.name, function(){
            names += " " + this;
        });

        alert("JSON Data: " + names);
    });

}

Каждый раз, когда я запускаю функцию, я получаю эту ошибку в Chrome: «Uncaught SyntaxError: Неожиданный токен:»

Есть идеи?Я удостоверился, чтобы поставить "jsoncallback =?"в конце URL, чтобы он возвращался как JSONP, но у меня сейчас нет решений.

Спасибо, -Ben

Ответы [ 2 ]

3 голосов
/ 08 ноября 2010

graph.facebook.com ожидает callback в строке запроса, а не jsoncallback, поэтому ваш URL должен выглядеть следующим образом, чтобы вызвать JSONP на их стороне (в настоящее время вы просто получаете JSON):

var friendsURL = 'https://graph.facebook.com/<?= $cookie['uid'] ?>/friends?access_token=<?= $cookie['access_token'] ?>&callback=?';
1 голос
/ 08 ноября 2010

Почему бы не использовать вместо этого официальный Javascript SDK? Этот звонок будет:

FB.api('/userid/friends', function(response) {
  // response is an array of friends
});

Официальная библиотека будет обрабатывать детали для вас, поэтому вам не нужно беспокоиться обо всех деталях реализации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...