我正在尝试使用FB的官方PHP SDK执行以下操作:
$facebook->api(
'/me/feed',
'POST',
array(
'link' => 'test',
'message' => 'test'
)
)
不幸的是,服务器(不是facebook!)返回500错误。
请求通过,状态发布,但我的服务器返回错误。
我的问题是,我如何找出原因?
答案 0 :(得分:5)
500通常是“内部服务器错误”。
如果你从facebook api电话中获得500回,那么它们可能会出现问题。
然后,您的HTTP请求可能会有点关闭,而fb服务器会“嗯,什么?”然后发给你500,因为它无法解释问题。
我记得很多年前fb api在出现问题时返回了大部分“未知错误”代码 - 从那时起就没有触及那个api。希望你没有遇到同样的问题。
要真正解决问题,您需要:
A)捕获您的HTTP请求和响应,包括标头,将其与成功的api调用进行比较,并在需要时进行更改。 B)捕获facebook SDK抛出的任何异常。
选项A将始终有效,但选项B可能更快。
退房: php exceptions
编辑: 要查看在您的服务器上导致500错误的原因,请查看您的apache错误日志。
您也可以使用
error_reporting(E_ALL);
排除任何php错误。
答案 1 :(得分:0)
在我的情况下,我将应用程序从一个服务器移动到另一个服务器,缺少的CURL是错误:)
在管理模式下,我可以看到以下行>
PHP致命错误:未捕获的异常'异常',消息'Facebook需要CURL PHP扩展名'。在/srv/www/smixe.com/base_facebook.php:19