2013-01-11 125 views
0

我試圖從Facebook頁面獲取一些json訂閱源。這裏是我的代碼:jQuery從Facebook獲取JSON訂閱源

var myurl = "https://www.facebook.com/feeds/page.php?id=111222778066&format=json"; 
$.ajax({ 
    url: myurl, 
    type: 'GET', 
    dataType: "jsonp", 
    success: function(json){ 
     ... 
    } 
}); 

的問題是,我不斷收到此錯誤:(在page.php文件:2)

Uncaught SyntaxError: Unexpected token : 

任何幫助,高度讚賞...

回答

0

這是試圖查詢一個頁面的RSS提要。 RSS Feed正式被棄用。根據頁面創建日期的不同,有些頁面仍然使用它們,但不能依賴它們在那裏,也不能檢測它們是否存在。

此頁面似乎有一個供稿 - 現在,因爲URL返回數據。

您的錯誤是一個語法錯誤。看看你的控制檯,看看它來自哪條線。不能保證意外冒號位於您發佈的代碼片段中。

未來證明你的腳本,你最好的選擇是創建一個應用程序,並在此URL通過圖形API查詢頁面:

https://graph.facebook.com/111222778066/feed?access_token=YOUR_APP_ACCESS_TOKEN 

如果你作爲一個應用程序進行身份驗證,就可以得到永久的訪問令牌。使用JavaScript SDK將爲您自動執行此過程。

這些文章應該讓你開始:

0

這不是RSS的一個問題,因爲@cpilko提到飼料被棄用。你的問題是,Facebook的飼料不支持它依靠加載數據網址作爲javascript,其中包括回調,而不是他們只返回普通,。相反,您需要通過別的東西代理Feed,比如您自己的後端或Google提供的API:

<script> 
    function jsapi_loaded(){ 
    google.load("feeds", "1"); 

    function initialize() { 
     var feed = new google.feeds.Feed(
     "https://www.facebook.com/feeds/page.php?format=rss20&id=111222778066" 
    ); 
     feed.setNumEntries(10); 
     feed.load(function(result) { 
     if (!result.error) { 
      console.log(result); 
     } 
     }); 
    } 
    google.setOnLoadCallback(initialize); 
    } 
</script> 
<script src="https://www.google.com/jsapi?callback=jsapi_loaded" async></script> 
相關問題