我搜索了周围到处都没有运气,并发现很多示例上传照片到Facebook时,用户在会议中(即用户身体坐在电脑和访问网页)。我试过样品,他们工作。离线上传到Facebook的照片与来自网络服务器的照片
我注意到,从去年的这个悬而未决的问题就同一问题 Stackoverflow Question
我当前的应用程序让用户授权离线更新和我保存的access_token,USER_ID等,我可以成功地发布到用户在离线时会被关闭。
我真的很努力地把一些照片发布到用户墙上。阅读Facebook documentation,我认为你只能使用multipart/form-data上传照片!?!?
如果用户不在他们的计算机上,这将不起作用。您可以上传存储在我的服务器上的目录中的照片吗?
这是我的代码到目前为止。记住,这不会使用Facebook会话,因为access_code已经被预先授权和存储。正如我所提到的,张贴到用户墙上已经可以使用这种方法。
$filename= "@/myphotodir/filename.jpg");
$url = "https://graph.facebook.com/".$uid."/photos"; //$uid is fb user id
$ch = curl_init($url);
$attachment = array('access_token' => $access_token,
'app_id' => $app_id,
'name' => "A photo from me...",
'fileUpload' => true,
'message' => "my message",
'image' => $filename,
);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $attachment);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result= curl_exec($ch);
curl_close ($ch);
编辑:$ result返回false ...忘了补充一点。
任何帮助,将不胜感激。 非常感谢, 院长
我以前试过,它没有工作。但是,我再次尝试以防万一我错过了某些内容,并且Facebook SDK期待Form Post Data(即期望您坐在您的机器上,通过表单上传文件)。在离线上传模式下,不会有任何表单发布数据。来自SDK的确切错误消息如下。 ---->“致命错误:Uncaught CurlException:26:创建formobt数据失败,在629行中引发/home/myforev3/public_html/library/facebook.php” – Dean 2011-04-18 09:33:24
我想做同样的事情。 @Dean,你找到了解决办法吗?如果是这样,请让我知道。提前致谢 – 2013-03-12 12:22:23