Как да четем емисии във facebook с помощта на json формат в javascript

Това е URL адресът на моята такса във формат json тук

Искам да знам как да получа съдържанието на публикацията, заглавието, харесванията, коментара с помощта на метода jquery getJSON. Всяка помощ ще бъде ли подходяща?

JQUERY КОД

$("document").ready(function() {
    $.getJSON("https://www.facebook.com/feeds/page.php?id=397319800348866&format=json", function(data) {
        $("#div-my-table").text("<table>");
        $.each(data, function(i, item) {
            $("#div-my-table").append("<tr><td>" + item.EncoderName + "</td><td>" + item.EncoderStatus + "</td></tr>");
        });
        $("#div-my-table").append("</table>");
    });
});

HTML КОД

<table id="div-my-table">
    <tr><td></td></tr>
     <tr><td></td></tr>
     <tr><td></td></tr>
</table>

person sami    schedule 19.12.2012    source източник


Отговори (2)


Използвайте jquery getJSON() с обратно извикване=? така че ще използва JSONP. Трябва да използвате някакъв API като graph graph.facebook.com Нещо като по-долу.

$.getJSON('https://graph.facebook.com/397319800348866?callback=?', function(data) {
     console.log(data);
     $('#likes').text(data.likes);

})
.success(function() { console.log('success'); })
.error(function() { console.log('error'); })
.complete(function() { console.log('complete'); });​

HTML

 likes: <div id='likes'></div>​
person Doink    schedule 19.12.2012
comment
Просто го изпробвах и го редактирах. Работи. Моля, вижте jsfiddle.net/Doinkmeister/abWwb - person Doink; 19.12.2012
comment
Просто натиснете F12 в Chrome и отидете на конзолата, за да видите резултата. - person Doink; 19.12.2012

Не можете, тъй като емисията е в различен домейн от този, на който ще изпълнявате своя Javascript, и не можете да правите междудомейн заявки с AJAX.

Ще трябва да внедрите решение от страна на сървъра, използвайки PHP или подобно, за да извлечете данните и да ги преобразувате като JSON и след това да използвате вашия AJAX, за да заредите вашия локален скрипт от същия домейн.

person Nick Coad    schedule 19.12.2012
comment
И така, как да го направя с php? - person sami; 19.12.2012
comment
трептенето използва JSONP, а не JSON. Използвайте обратно извикване=? да използвате JSONP. Все пак не съм сигурен дали Facebook го поддържа. - person Doink; 19.12.2012
comment
Просто актуализация. Работи за facebook, ако обратното повикване=? Прочетете следващата страница за повече информация. developers.facebook.com/docs/reference/api - person Doink; 19.12.2012