javascript - 使用 FB.ui 的 Facebook Feed 对话框给出 API 错误 191

标签 javascript facebook api mobile

我想在我的网站上添加一个自定义 Facebook 分享按钮,就像您在 BBC 新闻报道顶部看到的按钮一样,例如 http://www.bbc.co.uk/news/uk-19535236 。为此,他们使用 Facebook Feed Dialog。因此,当您单击该链接时,您会看到一个对话框,允许您将当前所在页面的 URL 发布到时间轴上。

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>

(用我的实际 app_id 代替 00000000000 ,用站点 URL 代替 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.

即使“链接”参数与我的 Facebook 应用设置中该应用的“站点 URL”完全匹配,我也会收到此消息。

谁能告诉我如何让它发挥作用?我希望人们能够共享我网站上的任何页面,而不仅仅是与我的 Facebook 应用程序相对应的 URL。

最佳答案

要实现共享,应用程序配置的最低要求是至少设置

应用程序域(在“基本信息”下)

站点 URL(在通过 Facebook 登录的网站下)

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

设置其他参数也可以,例如移动站点 URL 等。

关于javascript - 使用 FB.ui 的 Facebook Feed 对话框给出 API 错误 191,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12338167/

相关文章:

ios - FBSDKshareDialog 和 FBSDKsharephoto 导致图像质量下降

api - 是否有基于公司名称搜索股票代码的 API?

javascript - react 谷歌地图 API :Cannot read properties of undefined reading 'emit'

javascript - ckeditor 将样式应用于选择

Javascript,jQuery : Change a certain word of a div into a <span> with a function

javascript - 如何通过 ng-click 行表导航到包含相应数据的其他页面

javascript - 如何使用 vue.js 将服务器端数据绑定(bind)到某些 html 元素

javascript - Facebook API - 评论分享指向错误 URL 的链接

php - CSS 仅与 PHP API 内联工作

android - session Cookie 在 Retrofit Android 中不持久