FB.UI Feed对话框 - 无法“分享”Facebook的图片

时间:2014-03-25 22:39:24

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

使用移动网络应用程序&分享Facebook照片(真的是Facebook照片) Feed对话框。

问题: 无法将Facebook的照片发送到Feed对话框。

所有代码都很棒。我获得了发送给函数的所有属性。

    FB.ui
        method: "feed"
        link: 'url'
        app_id: myAppID
        name: 'photo's name'
        description: ''
        caption: $('#albumName').text()
        picture: 'http://myUrl.com/logo.png'

    , (response) ->
        if response and response.post_id
            console.log 'Photo was shared'
        else
            console.log 'Photo was not shared. Please try again'

如果我放置一张静态照片,代表Picture parameter,一切顺利,如果我尝试拨打一张脸部照片< / strong>我尝试分享,然后我收到500服务器错误。

  

GET   https://www.facebook.com/dialog/feed?access_token=...662390597_s.jpg&sdk=joey   500(好)

这完全是奇怪的。转到对话框iframe的URL包含所有必需的参数,包括access_token。

这似乎是一个设计问题。就像facebook中的某个人一样,当我们使用他们的供稿对话框定制分享内容时,我们不想假装自己是Facebook,当我们分享Facebook照片时。

我是对的吗?

*问题已解决。请参阅下面的答案*

2 个答案:

答案 0 :(得分:2)

<强> !!! 解决了问题 !!!

Facebook不接受自己的CDN作为来源。我们需要绕过它才能分享,因此我们可以使用代理转发Facebook照片。

http://images.weserv.nl 完成这项工作。 Facebook接受图像作为图片参数,这样您就可以转发他们的帖子。

用法示例(加上宽度和高度来提高性能)

'https://images.weserv.nl/?url=' + facebookImageUrl + '&h=200&w=200'

答案 1 :(得分:0)

我无法使用此示例分享Facebook照片 当我与(fb.ui方法提要)分享时,我在此链接上收到404错误

https://fbexternal-a.akamaihd.net/app_full_proxy.php?app=460125687444228&v=1&size=z&cksum=047536ba625482c9b5343f2eb94a7039&src=https%3A%2F%2Fimages.weserv.nl%2F%3Furl%3Dhttps%253A%252F%252Ffbcdn-sphotos-b-a.akamaihd.net%252Fhphotos-ak-ash4%252Ft1.0-9%252F10157304_1383818341898181_8685912667835736794_n.jpg%26h%3D200%26w%3D200"

"app=460125687444228
cksum=047536ba625482c9b5343f2eb94a7039
size=z
src=https://images.weserv.nl/?url=https%3A%2F%2Ffbcdn-sphotos-b-a.akamaihd.net%2Fhphotos-ak-ash4%2Ft1.0-9%2F10157304_1383818341898181_8685912667835736794_n.jpg&h=200&w=200
v=1"

我的错误在哪里?