0

我正在尝试将图像发布到 facebook 有趣的页面,它可以在我自己的墙上工作,但有趣的页面没有,并且将文本发布到 fb 有趣的页面墙上没有问题。

    $photo_url = "http://www.google.com/logo.png";

       $photo_caption = $text;

  $code = $_REQUEST["code"];

  //Obtain the access_token with publish_stream permission 
  if (!$code)
  { 
    $dialog_url= "http://www.facebook.com/dialog/oauth?"
      . "client_id=" .  $app_id
      . "&redirect_uri=" . urlencode( $post_login_url)
      .  "&scope=publish_stream";

    echo("<script>top.location.href='" . $dialog_url
      . "'</script>");
  } 
  else 
  {
    $token_url="https://graph.facebook.com/oauth/access_token?"
      . "client_id=" . $app_id
      . "&client_secret=" . $app_secret
      . "&redirect_uri=" . urlencode( $post_login_url)
      . "&code=" . $code;

    $response = file_get_contents($token_url);
    $params = null;
    parse_str($response, $params);
    $access_token = $params['access_token'];

    // POST to Graph API endpoint to upload photos
    $graph_url= "https://graph.facebook.com/{FUNPAGE-ID}/photos?"
      . "url=" . urlencode($photo_url)
      . "&message=" . urlencode($photo_caption)
      . "&method=POST"
      . "&access_token=" .$access_token;

    echo '<html><body>';

       echo file_get_contents($graph_url);

    echo '</body></html>';
  }

我能做什么我认为这是关于graph_url

4

1 回答 1

0

您需要将数据作为图像本身的编码二进制文件提供。URL 参数仅将链接添加到 POST 作为文本或注释的一部分,它不会从该 URL 检索和添加照片 istelf!

添加类似的东西

...
"url=" . urlencode(file_get_contents($photo_url));
...

并且:此外,方法必须是 POST,我不太确定“file_get_contents”是否会发布数据,而不仅仅是按照名称执行 GET。

于 2013-06-08T12:26:59.783 回答