Picker API - 手动设置access_token

时间:2017-07-24 17:16:41

标签: google-api google-drive-api google-picker

我正在尝试使用this guide使用Picker API,并且指南工作正常。

但是,我的应用使用Google登录本身登录用户。因此,本指南中的auth步骤是多余的,因为我已经从用户登录时获得access_token(我通过使用节点js在服务器上交换auth_code来获取此信息谷歌api客户端库)。但是,当我尝试使用这个旧的access_token值调用函数setOAuthToken(oauthToken)时,它会向我显示此屏幕而不是Picker,要求我再次登录。

image

我在这里做错了什么。

2 个答案:

答案 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()回调中获得的标记对象相同。因此,如果某些内容无法正常工作,您可以从中添加更多属性以使其正常工作。

希望这有帮助。