0

我一直在努力使用 javascript sdk 创建一个发布到流的对话框。我无法让它工作,所以我沮丧地尝试用我以前工作过的另一个应用程序的应用程序 ID 替换应用程序 ID。不知何故,这很完美!代码没有区别,只是app id变了。

这是代码。导致 sdk 使用一个 id 而不是另一个 id 的两个应用程序设置之间可能有什么区别?事实上,我创建的任何新的 facebook 应用程序都不能与 javascript sdk 一起使用。只有我原来的应用程序。

<div id="fb-root"></div>
<script>
    (function() {
        var e = document.createElement('script'); e.async = true;
        e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
        document.getElementById('fb-root').appendChild(e);
    }());
    window.fbAsyncInit = function()
    {
        FB.init({ appId: '696969696969', status: true, cookie: true, channelUrl: 'http://example.com/channel.html' });         

        FB.getLoginStatus(function(response)
        {
            console.log(response.session);
        });

        var publish = {
            method     : 'stream.publish',
            message    : '',
            attachment : {
                name        : 'name',
                caption     : 'caption',
                description : 'description',
                href        : 'http://www.fjdjdj.com'
            },
            action_links : [ { text : 'action link', href : 'http://www.cnn.com' } ],
            user_message_prompt  : 'user prompt'
        };

        FB.ui(publish, function(response) { console.log(response); });            
    };        
</script>
4

2 回答 2

0

我想这是您的应用程序设置,很可能是Site URL。如果这与您运行 SDK 的域 不匹配,它将无法工作。

额外提示,最好从用户添加的应用程序中删除应用程序并重新安装!

于 2011-01-19T00:29:49.107 回答
0

1-确保两个应用程序在 facebook 仪表板上具有相同的设置。2-这是有趣的部分。确保您的应用 ID 广告密钥正确无误。您是否正确复制粘贴它们?

于 2011-01-19T22:47:55.780 回答