1

我正在使用 JS SDK 在用户的时间轴上发布一些内容。我的网站使用 site44 托管,因此具有http://domainname.site44.com类型的 url 。这是我正在使用的代码:

<script>        
window.fbAsyncInit = function() {
    FB.init({
      appId      : '{*********}', // APP ID
      channelURL : 'http://domainname.site44.com/channel.html',
      xfbml      : true,
      version    : 'v2.0'
    });
};

(function(d, s, id){
 var js, fjs = d.getElementsByTagName(s)[0];
 if (d.getElementById(id)) {return;}
 js = d.createElement(s); js.id = id;
 js.src = "http://connect.facebook.net/en_US/sdk.js";
 fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));

function share(){
    FB.ui({
        method: 'feed',
        name: 'something',
        caption: 'something',
        description: (
            'something'
        ),
        link: 'http://domainname.site44.com',
        picture: 'imageLinkInsertedHere'
    });
}
</script>

在 channel.html 文件中,我有以下代码:

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

当用户使用 javascript 的 onclick="share()" 单击按钮时,我会触发 share() 函数。

我在 fbrell 上对此进行了测试,并且效果很好。但是,当我在我的网站上使用它时,弹出窗口会显示错误消息An error occurred. Please try later。我在 Stack Overflow 上遇到过其他类似的问题,但没有一个有帮助。我还在我的 APP 设置中添加了正确的域。我究竟做错了什么?

4

1 回答 1

2

不能包括花appId括号{/ }。其余的代码似乎很好。

但是您应该知道的另一件事是Feed Dialog 现在已弃用。您现在应该改用现代共享对话框。这是相同的示例

于 2014-06-03T07:58:20.460 回答