【问题标题】:Use Gmail API and Firebase's database of another app in one iOS application在一个 iOS 应用程序中使用 Gmail API 和 Firebase 的另一个应用程序的数据库
【发布时间】:2016-12-25 13:37:23
【问题描述】:

在我的应用程序中,我使用 Firebase 的数据库(由我的另一个应用程序使用)和 GMail api。这两项服务都需要特定的客户端 ID,该客户端 ID 必须位于 GoogleService-Info.plist 文件中。所以,如果我使用 Gmail 的客户端 ID,firebase 的应用程序将无法运行。是否可以定义此服务所需的客户端 ID?

【问题讨论】:

    标签: ios firebase gmail firebase-realtime-database gmail-api


    【解决方案1】:

    你有几个选择:

    如果您转到Firebase Console > Auth > 登录方法,然后选择 Google,您可以将您的客户 ID 列入白名单用于您的 gmail API 访问。这将允许您在登录时使用 gmail 的客户端 ID(通过直接将客户端 ID 指定为 GIDSignIn,或通过在 GoogleService-Info.plist 中手动更新它),并使用来自该登录的凭据与 @ 987654326@ API。

    另一个选项只是启用您的 Firebase 项目以进行 gmail API 访问。任何 Firebase 项目也是 Google 项目,因此您可以转到 Google Developers Console 并找到您创建的 Firebase 项目,然后像以前一样启用 gmail API。这样做的不利之处在于,之前登录过您的 Google 项目的用户必须再次登录您的 Firebase 项目才能授予对其资源的访问权限。

    【讨论】:

    • 根据第一个选项,我应该将 Xcode 项目中的 CLIENT_ID 粘贴到 FB 控制台中的 Google 白名单中,以使我的用户数据库(来自身份验证部分)对使用 Gmail API 的应用程序可见,对吗?跨度>
    • 你能告诉我刷新访问令牌的http方法吗?
    • 在设备上,刷新应该会自动发生。在服务器上,查看developers.google.com/identity/protocols/…上的 REST 选项卡
    • 感谢伊恩。据我了解,我可以永远使用“refresh_token”,还是需要在大约 30 分钟后像 access_token 一样刷新它?
    • iOS 应用可以获取 client_secret 吗?
    猜你喜欢
    • 2012-05-29
    • 1970-01-01
    • 2018-03-24
    • 2020-12-26
    • 2016-04-19
    • 2015-06-27
    • 1970-01-01
    • 2011-09-09
    • 2011-01-21
    相关资源
    最近更新 更多