FB.ui与图片参数 - 越野车?

时间:2016-01-03 10:36:56

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

我设置了一个Facebook应用程序并将其包含在:

之后
<script>
            window.fbAsyncInit = function () {
                FB.init({
                    appId: 'HEREISMYAPPID',
                    xfbml: true,
                    version: 'v2.5'
                });
            };

            (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 = "//connect.facebook.net/en_US/sdk.js";
                fjs.parentNode.insertBefore(js, fjs);
            }(document, 'script', 'facebook-jssdk'));
        </script>

现在我做了两个方法。一个用于共享没有图片的文本,另一个用于与图片共享提要:

function sharefbimage(imgUrl, title, desc, spruchbildid) {
                FB.ui(
                        {
                            method: 'feed',
                            name: 'My App Name',
                            link: 'https://myurl.de/cdcd/'+spruchbildid,
                            caption: title,
                            description: desc,
                            picture: imgUrl
                        },
                function (response) {
                    if (response && response.post_id) {
                        alert('success');
                    } else {
                        alert('error');
                    }
                }
                );
            }

function sharefbtxt(spruch,spruchid) {
                FB.ui(
                        {
                            method: 'feed',
                            name: 'My App Name',
                            link: 'https://myurl.de/cdcd/'+spruchid,
                            caption: 'This is the best caption ever',
                            description: spruch
                        },
                function (response) {
                    if (response && response.post_id) {
                        alert('success');
                    } else {
                        alert('error');
                    }
                }
                );
            }

如果我通过调用&#34; sharefbtext&#34;来共享文本。一切都按预期工作。如果我按下取消按钮,弹出窗口将关闭,我收到响应警报。

如果我打电话给&#34; sharefbimage&#34;用&#34;图片&#34;参数对话框按预期打开,图像按预期加载。您可以发布Feed,它会显示在墙上。唯一不起作用的是,如果按下取消按钮,它不会关闭对话框,因此响应警报永远不会显示。按取消或发布后,Feed只会重定向到&#34; https://www.facebook.com/v2.5/dialog/feed&#34;但对话框不会关闭...

我错过了什么或这是一个错误吗?

1 个答案:

答案 0 :(得分:0)

我使用过Facebook API 2.5 Javascript SDK,这就是我在用户个人资料上发布照片所做的工作(在本例中是我的个人资料):

FB.api(
  'me/photos/',
  'POST',
  {
    message: 'This is a photo',
    url: 'image link'
  },
  function(response) {
    console.log(response);
  }
);

这将创建一个包含您应用名称的新相册,顺便说一句,如果您想发布GIF,请在此处查看我的回答: Share animated GIF to Facebook using Javascript