OAuth令牌工程USERINFO而不是谷歌日历(OAuth Token works for use

2019-10-29 03:45发布

谁能告诉我为什么我不能用同样的道理,从谷歌获取用户信息和日历列表?

我已经设置了正确的范围(我认为):

  private static final String PLUS_ME_SCOPE = "https://www.googleapis.com/auth/plus.me";
  private static final String USER_INFO_PROFILE_SCOPE = "https://www.googleapis.com/auth/userinfo.profile";
  private static final String USER_INFO_EMAIL_SCOPE = "https://www.googleapis.com/auth/userinfo.email";
  private static final String GOOGLE_CALENDAR_SCOPE = "https://www.googleapis.com/auth/calendar";

为了获取用户信息,我用这个网址: https://www.googleapis.com/oauth2/v1/userinfo?alt=json&access_token=和日历使用: https://www.googleapis.com/calendar/v3/用户/我/ calendarList?minAccessRole =作家与关键= 。

在用户信息我得到的所有正确的信息,但日历我收到错误401:需登录。

什么在这里是怎么回事?

Answer 1:

更改

https://www.googleapis.com/calendar/v3/users/me/calendarList?minAccessRole=writer&key=

https://www.googleapis.com/calendar/v3/users/me/calendarList?minAccessRole=writer&access_token=

就是这么简单;)

更新:

还要注意, 不建议指定访问令牌作为查询参数 :

因为与URI方法相关联的安全漏洞的(见第5章),包括高可能性,含有访问令牌中的URL将被记录,它不应该被使用,除非它是不可能运送访问令牌中的“授权”请求报头字段或HTTP请求实体主体。



文章来源: OAuth Token works for userInfo but not to Google Calendar