【发布时间】:2018-02-15 19:29:19
【问题描述】:
我们正在构建一个访问 Google Drive 中文件的应用程序。我们的应用程序有一个 Web UI、一个 Android 应用程序和一个 iOS 应用程序。我们使用 oAuth2 让用户授权我们的应用访问他们的 Google Drive 帐户。我们在 Web 应用程序中使用 Google Drive Java SDK 和 Google Drive for mobile 的 Android/iOS SDK。我们无法在 iOS 中使用 Android SDK 返回的 oAuth 令牌,反之亦然。我们也不能在 Android 应用程序中使用 Java SDK(我们的 Web 服务器)收到的令牌。因此,我们不得不为每个平台(web、Android、iOS)创建单独的 oAuth 客户端,并且用户需要在每个平台上授权一次,这对用户不是很友好。有没有更好的方法在客户端之间使用相同的 oAuth 令牌?我在这里遗漏了一些非常基本的东西吗?
【问题讨论】:
-
我认为你缺少一些基本的东西。所有客户都应该在一个项目中。用户在项目级别而不是客户端级别进行授权。我不了解 iOS,但 Android OAuth 与包名称和签名密钥相关联。因此,您不希望在其他任何地方共享 Android 访问令牌。
标签: google-oauth google-oauth-java-client