2

私はこの 3 つのスコープを使用しています。

            scopes[0] = "https://www.googleapis.com/auth/drive";
            scopes[1] = "https://www.googleapis.com/auth/userinfo.email";
            scopes[2] = "https://www.googleapis.com/auth/userinfo.profile";

それらを承認し、次に従ってユーザーのメールアドレスを取得しようとします :
https://developers.google.com/drive/v2/reference/permissions/list

            PermissionList permissions = _service.Permissions.List("root").Fetch();
            IList<Permission> a = permissions.Items;

また、emailAddress が表示されません。
「Try it!」で同じスコープ (最初の 2 つだけでも) を含めている場合。セクションで
は、emailAddress を含む結果が得られます

私は何が欠けていますか?

4

3 に答える 3

0
"https://www.googleapis.com/auth/drive https://www.googleapis.com/auth/userinfo.email https://www.googleapis.com/auth/userinfo.profile"

複数のスコープを追加するには、スコープ間に空白を追加します。

于 2016-11-23T05:33:43.557 に答える
0

私は間違っている可能性がありますが、スコープなどを参照した方法だけでscopes[0], scopes[1], scopes[2]. それらを配列に格納しているようです。

クライアント側 (javascript) の oauth を使用してユーザー情報を取得していたとき、それらは単純にスペースで区切られていました。

于 2013-11-12T00:05:39.990 に答える
0

認証ユーザーの電子メールを探している場合は、tokeninfo エンドポイントを試してください (セキュリティ上の理由から、とにかく呼び出す必要があります)。https://developers.google.com/accounts/docs/OAuth2Login#obtaininguserprofileinformationを参照してください

于 2013-11-11T13:42:17.827 に答える