oauth-2.0 - Google Marketplace - 安装应用程序和访问 token

标签 oauth-2.0 google-drive-api google-oauth google-apps google-apps-marketplace

尝试测试我的市场应用程序的安装过程。谷歌文档说我可以使用控制台中的“测试安装流程”按钮来测试安装过程。当我单击该按钮时,我会看到授权对话框,然后单击“接受”。对话框已关闭,应用程序已安装在我正在测试的域上。

问题:我应该在此安装过程中的某个时刻获取并存储 refresh_token 吗?

有一个 Install URL that I can specify in Drive SDK但我找不到有关 Google 何时发布到此安装 URL 以及发布内容的文档。

enter image description here

最佳答案

这是一个向您展示如何做到这一点的项目:

查看名为:缓存凭据的部分

http://www.codeproject.com/Articles/488185/Working-with-Google-Drive-in-WPF

摘自上述网址:

如果用户允许访问,授权服务器将返回授权码。它可以通过 Google 服务器调用您的应用程序打开的 Web 服务端点来发回,也可以在发回浏览器的页面标题中发回。由于假脱机网络服务器、通过任何可能的防火墙打开连接等方面的挑战,安装的应用程序可以更容易地从生成的网页标题中获取授权代码。这是示例项目中使用的技术。如果成功,标题将设置为 Success code=xxxxxxxxx,其中 xxxx 将替换为唯一的授权代码。

授权码只会让您受邀参加聚会。就 API 访问而言,您无法使用该代码执行任何操作。授权代码必须更换为短期访问代码和长期刷新代码。 Google.Apis.Authentication.OAuth2 库中有一个名为 NativeApplicationClient 的类。这是授权服务器的包装器,它有一个名为“ProcessUserAuthorization”的方法。此方法获取用户授权应用程序访问后检索到的授权代码,并将其转换为访问 token 和刷新 token 。访问 token 是我们手头任务实际需要的,它保存在 NativeApplicationClient 中。它会随所有后续 API 调用一起传递。 NativeApplicationClient 的好处是它知道如何验证访问 token 以及 token 的有效期。如果 token 已过期,客户端将使用刷新 token 来获取新的访问 token 。这减轻了我们管理 token 生命周期的负担。

关于oauth-2.0 - Google Marketplace - 安装应用程序和访问 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22226497/

相关文章:

google-apps-script - Google Apps 脚本 - 使用另一个单元格的十六进制值更改单元格的背景颜色

azure - 如何使用 Oauth 2.0 将 Windows Azure 配置为身份提供者

node.js - 任何可以使 NodeJS 更简单地将 Google API 作为服务帐户访问的库?

ios - 通过 Google Drive API 使用 "resumable"uploadType 更新 Google Drive 中的文件

node.js - 如何在 Passport google auth 回调函数中获取用户个人资料数据?

google-apps-script - 授权我创建的 Google 脚本时遇到问题

security - OAuth2 和 Google API : access token expiration time?

oauth-2.0 - 如何创建 gitlab 登录按钮以允许客户端应用程序创建存储库、为用户提交和拉取请求?

api - 关闭窗口,登录后重定向到旧页面[客户端程序]

c# - context.DeserializeTicket(token) 做什么?