Issue with Google+ upgrade via OAuth2 and multiple

2019-05-29 01:58发布

I am using OAuth 2.0 with plus.login scope.
In order to handle multiple sign-in, I'd like to use the login_hint parameter. The request looks like

https://accounts.google.com/o/oauth2/auth?
  redirect_uri=https://developers.google.com/oauthplayground&
  response_type=code&
  client_id=407408718192.apps.googleusercontent.com&
  scope=https://www.googleapis.com/auth/plus.login&
  login_hint=user@gmail.com

It works in most cases, but I encounter an issue in a very specific situation :
if the account designated by login_hint is

  • currently signed-in, but
  • not the primary account, and
  • has not upgraded to Google+

the user is redirected as expected to the Google+ upgrade form but, after a brief instant, again redirected, to an Error 400 Unauthorized request page.

Is this an expected behavior?


Note:
The problem seems to be that the user is redirected to
https://plus.google.com/up?continue=...
instead of
https://plus.google.com/u/$i/up?continue=...

0条回答
登录 后发表回答