卷曲脸书博士


Php curl Facebook

我遗漏了什么吗?我想上传到用户墙。

//Facebook Wall Update
        $params = array('access_token'=>$access_token, 'source'=>'@'.$link, 'message'=>$message);
        $graph_url = "https://graph.facebook.com/". $fbuserid . "/photos?access_token=" . $access_token;
        $ch = curl_init();
        curl_setopt_array($ch, array(
        CURLOPT_URL => $graph_url,
        CURLOPT_POSTFIELDS => $params,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_SSL_VERIFYPEER => false,
        CURLOPT_VERBOSE => true
        ));
        $result = curl_exec($ch);

我建议使用Facebook PHP-SDK:

https://github.com/facebook/facebook-php-sdk

它有你需要的一切,还有更多的功能。

很少更改-

  1. 如果你想张贴到墙上,你应该使用"/feed"端点,而不是"/photos"。这是将一张图片发布到相册中(通常是时间线)。

  2. /feed终结点没有"message"。相反,你可以使用名称、标题、描述等。这些在下面的链接中突出显示。

  3. 自2013年2月起,你不能在任何其他人的墙上发帖,除非用户已经验证了该应用程序。因此,您只能发布到"我/订阅源"。

https://developers.facebook.com/docs/reference/api/post/

https://developers.facebook.com/roadmap/

如果你确实试图上传照片,你应该尝试以下数组:

$msg_body = array(
    'message' => $message,
    'url' => 'http://xyz.com/img.png'
   );

如果图片来自您自己的网站,请将"url"替换为"source"。

请确保已从用户处获得"publish_stream"权限。