Android上的OAuth2流程

时间:2018-06-26 07:43:08

标签: google-apps-script gmail-addons

我已经获得了完全授权,可以在任何浏览器上使用。使用任何给定的OAuth2服务器,我都可以进行身份​​验证。但是,当尝试通过Android进行授权时,我从scripts.google.com获得的唯一答复是“状态令牌无效或已过期。请重试。”

通过WebIDE检查设备后,我发现我从来都不是来自scripts.google.com,它只是打开了一个直接指向oauth.myserver.com?state=abc&redirect_uri=https://scripts.google.com/的新窗口...

是这样吗?在浏览器中,您从scripts.google.com“起源”,因此状态被保存为会话变量。返回时,URL中的状态与保存的状态匹配,所以一切都很好。但是,在Android上,scripts.google.com中没有设置状态,因为它是一个全新的没有状态的窗口,您所拥有的只是重定向URI。

我尝试在WebView中打开它,希望至少能起作用,但这不是一种选择。取消设置默认浏览器,只能让我选择在Firefox或Chrome中打开它。

我在这里想念什么?

1 个答案:

答案 0 :(得分:0)

基于此link,请确保已将项目密钥放入相关字段中。复制脚本和更改密钥时,可能会遇到此错误。您也可以选中此related thread。希望这会有所帮助。