我希望我的应用程序能够通过OAuth2身份验证登录到GTalk和GMail。我的应用在功能手机上运行,无法访问内部浏览器,因此我使用此处所述的"设备"OAuth 流。
POST to https://accounts.google.com/o/oauth2/device/code
返回一个invalid_scope
错误(400 HTTP 错误),范围设置为 GTalk
scope="https://www.googleapis.com/auth/googletalk"
如果我将范围设置为 GMail ( https://mail.google.com/
),它会返回相同的错误,但是如果我将范围设置为 Youtube ( https://gdata.youtube.com
),一切正常。
是否有一个"白名单"描述了源(Web,已安装的应用程序或设备)对不同范围的可访问性,即是否不允许从设备对GTalk和GMail进行OAuth2身份验证?
如果是这种情况,当OAuth2将是登录这些服务的唯一方式时,在功能手机上运行的J2ME应用程序将无法再登录GTalk/Gmail服务。
手机不是智能手机,既不运行Android也不运行iOS!
来自 Google 网上论坛上的 OAuth2 开发者组(你也在那里发布了这个问题,但到目前为止还没有答案):
并非所有范围都支持与设备流一起使用,这就是出现错误的原因。
谷歌最好在某处记录这一点并说明这些范围是否会在以后为设备流启用。