0
私は多くの投稿を読んでいました。多くの人が試してみることができ、最終的に部分的な回答を得ました。私が最初に探していた電子メールアドレスは含まれていません。Googleドライブ - OAuth(またはどこか)から電子メールアドレスを取得する必要があります
define('SCOPES', implode(' ', array(
Google_Service_Drive::DRIVE,
Google_Service_Oauth2::USERINFO_EMAIL,
Google_Service_Oauth2::USERINFO_PROFILE,
Google_Service_Oauth2::PLUS_ME)
));
注:私は$結果のダンプは、いくつかの情報を持っていますが、メールではない...いくつかは、必要とされないことも知っているが、申し訳ありません右より良い安全な... ?? ..
$accessToken = "{\"access_token\":\"ya29.CjR9A6X75 bla bla bla 02913}";
$client = new Google_Client();
$client->setApplicationName(APPLICATION_NAME);
$client->setScopes(SCOPES);
$client->setAuthConfigFile(CLIENT_SECRET_PATH);
$client->setState($userId);
$client->setAccessType('offline');
// set the accessToken
$client->setAccessToken($accessToken);
$googleOAuth = new Google_Service_Oauth2($client);
$result = $googleOAuth->userinfo->get();
var_dump($result);
$結果の。
スニペット=
["locale"]=>
string(2) "en"
["name"]=>
string(11) "Fred Flintstone"
["email"]=>
NULL
["id"]=>
string(21) "1111111111111111111111"
["picture"]=>
string(92) "https://bla blabla/photo.jpg"
["verifiedEmail"]=>
NULL
誰もが「なぜ」私は私は本当に旧姓、メールを返して届かないにいくつかの光を当てることができますそれです。または、私がすでに試したことのないいくつかの提案?
おかげで、
ジョン
見つかり以下のhttpsになります://開発者。 google.com/drive/v3/reference/about/get#http-requestとメールアドレスを取得します具体的なリクエストは、GET https://www.googleapis.com/drive/v3/about?fields=user&key={YOUR_API_KEY}です。 $ service = new Google_Service_Drive($ client)などの情報をセットアップして取得する方法がありますか(私はPHPを使用しています)。 $ about = $ service-> about-> get(); – JMoskwa
私はそれを試み、エラーが返ってきます - PHP致命的なエラー: 'GET https://www.googleapis.com/drive/v3/about :(403)不十分な権限を呼び出す際にエラーが発生しました'というメッセージで、 'Google_Service_Exception' /var/treering/html/api/google-api-php-client/src/Google/Http/REST.php:110 – JMoskwa
このスコープ「https://www.googleapis.com/auth/drive」を追加してください。 apps.readonly'をあなたのコードに追加します。この[あなたの質問](http://stackoverflow.com/questions/22896018/google-php-client-api-insufficient-permission)の回答のように。デベロッパーコンソールで* Drive API *と* Google Drive API *を有効にしてください。 – KENdi