私は少し混乱しています。Google+ Android SDK を使用して、ユーザーをアプリにログインさせ、プロフィールの詳細を取得します。https://developers.google.com/+/api/oauthのマニュアルには明確に記載されています
スコープは暗黙的に含まれており、ユーザーにとって紛らわしいアクセス許可ダイアログが作成されるため、スコープを要求したり、スコープと組み合わせたりしないでください。
userinfo.profile
plus.me
plus.login
だから私は範囲だけを求めましたplus.login
(そしてuserinfo.email
範囲ですが、それは関係ありません)。呼び出してトークンのデバッグを試みました
https://www.googleapis.com/oauth2/v1/tokeninfo?access_token=ACCESS_TOKEN
これが私が返すものです:
{
"issued_to": "534771845378-3668o318pburvuhrukgj7pao3ir****.apps.googleusercontent.com",
"audience": "534771845378-3668o318pburvuhrukgj7pao****.apps.googleusercontent.com",
"user_id": "106027222137637*****",
"scope": "https://www.googleapis.com/auth/plus.login https://www.googleapis.com/auth/userinfo.email",
"expires_in": 2279,
"email": "****@****.com",
"verified_email": true,
"access_type": "online"
}
そして、これが私が呼び出してユーザープロファイルを取得しようとして得た応答です
https://www.googleapis.com/oauth2/v2/userinfo?access_token=ACCESS_TOKEN
{
"id": "10602722213763777****",
"email": "****@****.com",
"verified_email": true,
"hd": "****.com"
}
明らかに、この応答にはユーザー プロファイルの詳細が含まれていないことがわかります。
userinfo.profile
Google が言うように、スコープを追加すると、ユーザーのプロファイルの詳細に関する適切な応答が得られます。
Google で何が起こっていますか?