0

「Graph API Explorer」からすべての「スコア」を削除しようとしています。アプリケーション (右上) を選択して DELETE し、https://graph.facebook.com/APP_ID_OMITTED/scores (リクエストとして) を書きましたが、エラーが発生しました:

{
  "error": {
    "message": "(#15) This method must be called with an app access_token.", 
    "type": "OAuthException", 
    "code": 15
  }
}

どこで私は間違えましたか?

4

2 に答える 2

1

これで動作しています。動作するコードは次のとおりです。

// Delete scores for all users
function get_app_access_token($app_id, $app_secret) {
    $token_url = 'https://graph.facebook.com/oauth/access_token?'
        . 'client_id=' . $app_id
        . '&client_secret=' . $app_secret
        . '&grant_type=client_credentials';

    $token_response = file_get_contents($token_url);
    $params = null;
    parse_str($token_response, $params);
    return  $params['access_token'];
}

$app_id = 'OMITTED';
$app_secret = 'OMITTED';
$access_token = get_app_access_token($app_id, $app_secret);

$request_body = '';
$ch = curl_init('https://graph.facebook.com/'.$app_id.'/scores?access_token='.$access_token);
        //curl_setopt($ch, CURLOPT_POSTFIELDS, $request_body);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
        curl_setopt($ch, CURLOPT_HEADER, 0); 
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "DELETE");
        $response = curl_exec($ch);
var_dump($response);
于 2012-08-16T21:56:57.503 に答える
0

エラー メッセージにあるように、アプリケーション アクセス トークンを使用していることを確認してください

Graph API エクスプローラーのみを使用している場合は、アカウントのユーザー アクセス トークンを持っている可能性があります。

于 2012-08-15T22:47:06.820 に答える