Facebook图形API:appsecret_-proof和PHP SDK v.3.2.3存在问题

Facebook图形API:appsecret_-proof和PHP SDK v.3.2.3存在问题,php,facebook-graph-api,Php,Facebook Graph Api,我有一个奇怪的问题,从昨天(2015年7月20日)开始出现。自2014年8月以来,我的脚本工作得非常好,所以将近一年,但现在它拒绝工作。如果我在Facebook上发布图片或文字,我会收到以下服务器错误消息: PHP致命错误:未捕获的GraphMethodException:无效 在抛出的API参数中提供了appsecret\u证明\n …/base_facebook.php,第1329行 这是中函数throwAPIException中的一行。我知道,这与选项要求应用程序机密有关(在Faceboo

我有一个奇怪的问题,从昨天(2015年7月20日)开始出现。自2014年8月以来,我的脚本工作得非常好,所以将近一年,但现在它拒绝工作。如果我在Facebook上发布图片或文字,我会收到以下服务器错误消息:

PHP致命错误:未捕获的GraphMethodException:无效 在抛出的API参数中提供了appsecret\u证明\n …/base_facebook.php,第1329行

这是中函数throwAPIException中的一行。我知道,这与选项要求应用程序机密有关(在Facebook开发人员->应用程序->设置->高级中)。这个选项停用了一年,所以我可能需要在我的脚本中添加一些新的内容

在中,我发现了在调用时添加此行的提示:

FacebookSession::enableAppSecretProof(false);
…但这与较新的SDK v.4相关,而不是与v.3相关。在我的脚本中,我使用以下命令调用SDK v.3:

$facebook = new Facebook(array( 'appId' => $App_ID, 'secret' => $App_Secret, 'cookie' => true ));
$facebook->setAccessToken($Access_Token);

有没有办法在任何地方添加启用AppSecretProof?谢谢你帮我!:-)

解决方案:在第918行中,您必须对这三行进行注释

# if (isset($params['access_token']) && !isset($params['appsecret_proof'])) {
# $params['appsecret_proof'] = $this->getAppSecretProof($params['access_token']);
# }
就这样