我正在尝试使用this guide使用Picker
API,并且指南工作正常。
但是,我的应用使用Google登录本身登录用户。因此,本指南中的auth
步骤是多余的,因为我已经从用户登录时获得access_token
(我通过使用节点js在服务器上交换auth_code
来获取此信息谷歌api客户端库)。但是,当我尝试使用这个旧的access_token值调用函数setOAuthToken(oauthToken)
时,它会向我显示此屏幕而不是Picker,要求我再次登录。
我在这里做错了什么。
答案 0 :(得分:1)
原来这是一个scope
问题 -
我没有使用新的作用域更新我的refresh_token
/ access_token
(使用驱动器的权限)
setOAuthToken(access_token)
工作得很好
答案 1 :(得分:0)
自从您使用Google登录(传递生成的ID令牌)和身份验证API(来自您使用的指南)后,可能会发生这种情况。您可以参考此thread进行手动设置。
gapi.auth.setToken({ access_token: "YOUR_TOKEN_HERE" });
实际上,此标记对象与您在gapi.auth.authorize()回调中获得的标记对象相同。因此,如果某些内容无法正常工作,您可以从中添加更多属性以使其正常工作。
希望这有帮助。