2012-09-09 72 views
2

我想在我的網站上添加一個自定義的Facebook分享按鈕,就像您在BBC新聞故事頂部看到的按鈕,如http://www.bbc.co.uk/news/uk-19535236。他們正在使用Facebook Feed對話框。所以,當你點擊鏈接時,你會看到一個對話框,允許你發佈任何網頁的URL到你的時間線上。使用FB.ui的Facebook Feed對話框給出API錯誤191

FB.ui方法似乎是調用對話框的最佳方式,因爲它會自動爲您的設備創建正確類型的彈出窗口。所以使用手機的人會看到適合他們設備的彈出窗口。此方法還允許我們指定回調,因此一旦用戶共享鏈接,我們可以增加他們共享的頁面上的份額。

我試圖按照http://developers.facebook.com/docs/reference/dialogs/feed/上的第一個示例。

<div id='fb-root'></div> 

<script src='http://connect.facebook.net/en_US/all.js'></script> 

<p><a href="#" onclick='postToFeed(); return false;'>Post to Feed</a></p> 

<p id='msg'></p> 

<script> 
    FB.init({appId: "00000000000", status: true, cookie: true}); 

    function postToFeed() { 

     // calling the API ... 
     var obj = { 
      method: 'feed', 
      link: 'http://example.com/', 
      picture: 'http://fbrell.com/f8.jpg', 
      name: 'Facebook Dialogs', 
      caption: 'Reference Documentation', 
      description: 'Using Dialogs to interact with users.' 
     }; 

     function callback(response) { 
      document.getElementById('msg').innerHTML = "Post ID: " + response['post_id']; 
      if (response && response.post_id) { 
       alert('Post was published.'); 
      } else { 
       alert('Post was not published.'); 
      } 
     } 

     FB.ui(obj, callback); 

    } 

</script> 

(subsituting我的實際APP_ID爲00000000000和網站網址爲http://example.com/)。但是,我得到這個錯誤,當我點擊鏈接:

API Error Code: 191 
API Error Description: The specified URL is not owned by the application 
Error Message: redirect_uri is not owned by the application. 

我得到這個即使在「鏈接」參數「網站URL」在我的Facebook應用程序設置中的應用完全匹配。

任何人都可以告訴我如何讓這個工作?我希望人們能夠在我的網站上分享任何網頁,而不僅僅是與我的Facebook應用相對應的網址。

回答

3

共享工作,在應用程序配置最低要求是設置ATLEAST

應用程序域(在基本信息)

網站URL(下網站與Facebook登錄)

App Domains : example.com 
Site URL : http://example.com 

setting oth呃參數也可以像移動站點URL

+0

感謝Abhishek,我有這些配置集,他們匹配我試圖分享的URL。 –