11

Googleのコンソール内に、APIキータイプのサーバーとOauthタイプの[その他]の認証情報を作成しました。開発者キーの場合 GoogleアナリティクスAPI - 認証後にサービスを追加する

私はAPIキーの資格情報を使用していますし、クライアントID /秘密のために私はGoogle AnalyticsのAPIのPHPのSDKを使用しています

のOAuth認証情報の使用しています:

$client = new Google_Client(); 
$client->setApplicationName('Schedule GA'); 
$client->setAccessType('offline'); 
$client->setUseObjects(true); 

$ganalytics_settings = wp_get_custom_field_for_current_user('ganalytics_settings', 'ga_settings'); 

$ganalytics_settings['google_api_key'] = 'c0f3d189e82938128ndoea1a426ee4e264e4b0b0'; 
$ganalytics_settings['google_client_id'] = '17381202384367-gejnedh2aijuq1660f0lvl5uvj6roloo4.apps.googleusercontent.com'; 
$ganalytics_settings['google_client_secret'] = '**Secret key**'; 

$client->setClientId("17381202384367-gejnel2aijuq1060f0lvl5uvj6roloo4.apps.googleusercontent.com"); 
$client->setClientSecret("QclsDKOSLcsrbpJD_KLbIUtQ"); 
$client->setDeveloperKey("c0f3d189e82938128ndoea1a426ee4e264e4b0b0"); 
$client->setRedirectUri('urn:ietf:wg:oauth:2.0:oob'); 
$analytics = new Google_AnalyticsService($client); //the error occurs here!!! 

// Setting Access Token 

$access_token = $ganalytics_settings['google_access_token']; 
if ($access_token) { 
    $client->setAccessToken($access_token); 
} 
else { 
    if ($ganalytics_settings['google_auth_code']) { 
     $client->authenticate($ganalytics_settings['google_auth_code']); 
     $ganalytics_settings['google_access_token'] = $client->getAccessToken(); 

     // update_option('ganalytics_settings', $ganalytics_settings); 
     ga_settings_exists_else_update(); 
    } 
} 

Cant add services after having authenticated 

任意の提案私が間違っているの何:

はしかし、私は、次のエラーメッセージが表示されますか?

返信いただきありがとうございます。

+0

エラーメッセージに範囲に関する記述はありますか?私に奇妙に見えるものは、あなたが範囲を設定していないということです。 [この質問](http://stackoverflow.com/questions/12397815/google-exception-with-message-cant-add-services-after-having-authenticated)も役立ちます。 – Matt

答えて

4

あなたは、最初の例に範囲を設定する必要があります。

$client->setScopes(['https://www.googleapis.com/auth/analytics.readonly']);

Thisチュートリアルでは、将来的にあなたを助けるかもしれません。

関連する問題