Facebook与自定义和动态数据共享问题

时间:2018-11-12 17:23:28

标签: javascript image facebook share share-open-graph

我需要从画廊中选择一张图片。该图像以模式显示(使用Bootstrap),并且在其下方有一个Facebook分享按钮。此按钮必须全角共享所选图像,自定义标题(始终相同),自定义描述(始终相同),并且当Facebook用户单击共享帖子时,重定向到自定义URL(始终相同) ,而不是图片)。

我尝试了不同的方式(FB开发文档,http://drib.tech/programming/dynamically-change-facebook-open-graph-meta-data-javascript,不同的“方法”,不同的“ action_type”等),但是我总是遇到不同的问题。

按照drib.tech的建议,情况如下:

  • 网站:它拥有正确的标题,描述和自定义链接,但图像始终是缩略图,并且显示“ John Cats喜欢链接”,而不是“ John Cats SHARES”。我认为这是因为我使用了"action_type": "og.likes",但与其他任何类型(og.shares等)共享错误的图像,标题和描述(需要使用自定义链接数据)
  • Android(在应用程序中):看起来像网页结果,但是并没有关闭弹出窗口
  • iOS:没有任何作用,我认为它讨厌弹出窗口。

我尝试使用iframe而不是弹出窗口,但是它表示不允许。

我也尝试过使用Facebook共享者URL:

https://www.facebook.com/sharer/sharer.php?u=" + url + "&title=" + titolo + "&picture=" + picture
https://www.facebook.com/share.php?u=" + url + "&title=" + titolo + "&picture=" + picture

但是结果是错误的图像,标题,描述。

所以...我的构想已经用完了,我的脚本太乱了,找不到其他构想了。有什么建议吗?

1 个答案:

答案 0 :(得分:1)

FB API的最新更新需要action_properties对象的另一种结构。

这是一个有效的示例:

FB.ui({
        method: 'share_open_graph',
        action_type: 'og.likes',
        action_properties: JSON.stringify({
            object: {
                "og": {
                    "url": your_url,
                    "title": your_title,
                    "image": {
                        "url": your_image_URL
                    }
                }
            }
        })
    }, function(response){});