Graph返回了一个错误:Facebook SDK V5中API参数中提供的无效AppSecret_proof



我使用不同的用户ID时会遇到此错误,但是在同一用户和应用程序中工作。

图返回一个错误:API参数中提供的无效AppSecret_proof

$accessToken = 'XXXXXXXXXXXXXX';
    $appsecret_proof = hash_hmac('sha256', $accessToken, app_secret); 
    $fb = new FacebookFacebook([
        'app_id' => app_id,
        'app_secret' => app_secret,
        'default_graph_version' => 'v2.11',
        'default_access_token' => app_id."|".app_secret
    ]);
    // FacebookSession::enableAppSecretProof(false);
    try {
      // Returns a `FacebookFacebookResponse` object
      $response = $fb->get('/me?fields=adaccounts{name}&appsecret_proof='.$appsecret_proof.'', $accessToken);
    } catch(FacebookExceptionsFacebookResponseException $e) {
      echo 'Graph returned an error: ' . $e->getMessage();
      exit;
    } catch(FacebookExceptionsFacebookSDKException $e) {
      echo 'Facebook SDK returned an error: ' . $e->getMessage();
      exit;
    }

尝试一下https://developers.facebook.com/tools/explorer/

如果您想提供access_token,则应该在您的

应该像下面 https://graph.facebook.com/me?fields=email&access_token=<mytoken>

首先尝试在开发人员帐户中,您可以通过access_token获得结果,并且要获得结果,您需要仅提供字段。

最新更新