首页 文章

Facebook Graph API:appsecret_proof和PHP SDK v.3.2.3的问题

提问于
浏览
1

我有一个奇怪的问题,从昨天(2015年7月20日)开始出现 . 我的剧本自2014年8月以来运作良好,近一年,但现在拒绝工作 . 如果我将图片或文本发布到Facebook,我收到此服务器错误消息:

PHP致命错误:未捕获的GraphMethodException:在1329行的... / base_facebook.php中抛出的API参数\ n中提供的appsecret_proof无效

这是Facebook PHP SDK (v.3.2.3)中函数throwAPIException中的一行 . 我知道,它与选项 Require App Secret (在Facebook开发 - >应用程序 - >设置 - >高级)有关 . 此选项已停用一年,所以我可能需要在脚本中添加新内容吗?

this stackoverflow-post我发现在调用时添加此行的提示:

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);

有没有办法在那里添加 enableAppSecretProof ?谢谢你的帮助! :-)

1 回答

  • 1

    解决方案:在base_facebook.php的第918行,你必须评论这三行

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

    而已 .

相关问题