如何使用Javascript SDK提示用户将照片分享到FB

时间:2014-04-01 06:12:45

标签: javascript facebook facebook-graph-api facebook-javascript-sdk

我有一个点击调用的函数。我想打开一个对话框,允许用户将图像发布到他们的FB墙。我正在使用Javascript SDK。然而,当它运行时,没有任何反应。有什么想法吗?:

window.fbAsyncInit = function () {
    FB.init({ appId: '***********', cookie: true, xfbml: true, oauth: true });
        // *** here is my code ***
        if (typeof facebookInit == 'function') {
            facebookInit();
        }
    };

    (function(d){
        var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
        js = d.createElement('script'); js.id = id; js.async = true;
        js.src = "//connect.facebook.net/en_US/all.js";
        d.getElementsByTagName('head')[0].appendChild(js);
    }(document));

/* make the API call */
function facebookInit() {
    FB.api(
        "/me/photos",
        "POST",
        {
            "object": {
                "url": "https://graph.facebook.com/*******/picture?width=720&height=720"
            }
        },
        function (response) {
            if (response && !response.error) {
                window.location = "http://url.com";
            }
        }
     );
}

1 个答案:

答案 0 :(得分:1)

您使用图谱API 发布照片,而不是对话框。

事实上,您无法使用对话框发布照片,这是您正在遵循的正确方式。

另一件事,而不是 -

"object": {
   "url": "https://graph.facebook.com/*******/picture?width=720&height=720"
}

只需发送url参数即可。 <{1}} jey不是必需的。

您可以随时查看object

中的回复/错误