Facebook创建专辑图api

时间:2012-08-22 15:02:59

标签: facebook facebook-graph-api

我写过一个Facebook应用程序,用于检查相册是否存在,如果没有,则会创建一个。

这一切都在2周前完成,现在我去检查它以显示客户端,它已不再有效。我以为它可能与Facebook有关,也许他们现在需要SSL?但是我在那里的网站上找不到任何证据。

我得到的错误是:

Warning: file_get_contents(https://graph.facebook.com/517578134925015/albums?access_token=AAAD5tUCp808BAIZBPk4eV11mlf9C92velLsDeZAm5mXhKZCkwpM3LNy7ax6BBmhuH4BVZBUN6Iycyt55NoXZAFSts9zHeCFNzT6FLJYucgT2SQG8fOYIP) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.0 500 Internal Server Error in /var/www/vhosts/hidden/development/cms/backend/publishAlbum.php on line 59

我目前的代码是:

                //If no album ID is set, create a new album.
            $graph_url = "https://graph.facebook.com/".$pageId."/albums?" . "access_token=". $pageAccessToken;
            $postdata = http_build_query(
                array(
                    'name' => $albumName
                )
            );
            $opts = array('http' =>
                array(
                    'method'=> 'POST',
                    'header'=>
                    'Content-type: application/x-www-form-urlencoded',
                    'content' => $postdata
                )
            );
            $context = stream_context_create($opts);
            $result = json_decode(file_get_contents($graph_url, false, $context));

感谢任何帮助。

由于

编辑:

我尝试使用API​​的代码。

$params = array(
    'name' => 'testtest',
    'message' => 'test test'
);
try{
    $albumtResult = $facebook->api('/'.$pageId.'/albums', 'post', $params);
}
catch(FacebookApiException $e){
    error_log($e);
    $albumtResult = null;
}
$albumId = $albumtResult->id;

以下是捕获的异常:http://pastebin.com/pxeyRTDn

2 个答案:

答案 0 :(得分:1)

好吧,如果您使用PHP SDK进行API调用,而不是使用file_get_contents“手动”执行这些错误,那么出现此错误的原因会更容易理解...因为使用SDK,您会得到一个应该指向错误原因的异常,而file_get_contents(默认情况下)只是在获得答案的2xx HTTP状态代码以外的任何内容时抛出警告,并且不允许您访问响应主体(很可能包含人类可读的错误信息)。

我的建议:使用SDK!

否则,即使状态代码发出错误信号,也要添加到要查看返回数据的上下文参数。 (详情 - >参见手册)

答案 1 :(得分:1)

经过大量搜索,有人在Facebook上创建了一个与我的问题几乎相同的错误报告。

自创建以来,它已经有很多回购和其他人报告他们也有同样的问题。

Facebook上的优先级已经变为高,所以希望很快得到解决。

Facebook错误报告:https://developers.facebook.com/bugs/376442565760536?browse=search_50361119879b15494037772

感谢每个人的时间。