1

我正在使用这个 facebook 分享链接

https://www.facebook.com/dialog/feed?
app_id=458358780877780&
link=https://developers.facebook.com/docs/reference/dialogs/&
picture=http://fbrell.com/f8.jpg&
name=Facebook%20Dialogs&
caption=Reference%20Documentation&
description=Using%20Dialogs%20to%20interact%20with%20users.&
redirect_uri=https://mighty-lowlands-6381.herokuapp.com/

它所做的是与名称、标题和描述共享链接。

我想要的是分享一张照片。(当我直接去 facebook -> 点击照片 -> 然后发布时,输出相同)

这件事可能还是已经可用?

4

2 回答 2

1

尝试这个:

<html xmlns="http://www.w3.org/1999/xhtml"
  xmlns:fb="https://www.facebook.com/2008/fbml">
  <head>
    <title>My Feed Dialog Page</title>
  </head>
  <body>
    <div id='fb-root'></div>
    <script src='http://connect.facebook.net/en_US/all.js'></script>
    <p><a onclick='postToFeed(); return false;'>Post to Feed</a></p>  <----- click photo -> then post it
    <p id='msg'></p>

    <script> 
      FB.init({appId: "YOUR_APP_ID", status: true, cookie: true});

      function postToFeed() {

        // calling the API ...
        var obj = {
          method: 'feed',
          redirect_uri: 'YOUR URL HERE',
          link: 'https://developers.facebook.com/docs/reference/dialogs/',
          picture: 'http://fbrell.com/f8.jpg',
          name: 'Facebook Dialogs',
          caption: 'Reference Documentation',
          description: 'Using Dialogs to interact with users.'
        };

        function callback(response) {
          document.getElementById('msg').innerHTML = "Post ID: " + response['post_id'];
        }

        FB.ui(obj, callback);
      }

    </script>
  </body>
</html>
于 2013-01-08T22:30:04.593 回答
1

你将无法以post这种方式拍照。该picture参数旨在欢迎自定义链接图片。

如果要将图片发布到时间轴,您有三个选项:

  1. 将照片上传到应用的相册https ://developers.facebook.com/blog/post/498/ (场景 1)。

  2. 创建新相册并添加照片https ://developers.facebook.com/blog/post/498/ (场景 2)。因为您想从 URL 而不是从您的计算机上传照片,所以您需要以下行:$image_url = '@' . realpath("http://fbrell.com/f8.jpg");. 然后,只需$image_url在对话 URL 中使用它。

  3. 用户生成的照片https ://developers.facebook.com/docs/opengraph/usergeneratedphotos/ 。

于 2013-01-08T17:39:07.737 回答