【问题标题】:Is it possible to use Firebase's built in authentication via Google in both a web and an Android client?是否可以在 Web 和 Android 客户端中通过 Google 使用 Firebase 的内置身份验证?
【发布时间】:2015-06-09 22:56:01
【问题描述】:

按照Firebase docs 中关于配置 Web 客户端应用程序的说明,它说我需要在 Google Developers Console 中创建一个新的客户端应用程序。这可以。但是,我已经在这里为我的服务的 Android 客户端应用程序定义了一个客户端应用程序。每个都有自己的 Google 控制台客户端 ID,Firebase 只允许您在 Firebase 仪表板的登录和身份验证部分输入一个客户端 ID 和客户端密码。我是否遗漏了某些内容,或者无法通过单个 Firebase 应用同时支持 Web 和 Android 客户端应用?

【问题讨论】:

    标签: android firebase firebase-security firebase-authentication


    【解决方案1】:

    这似乎在google group 中得到了回答。

    在多种不同应用程序类型中使用 Google 登录的工作流程是在 Google Developer Console 中创建一个具有多个单独客户端 ID 的项目(一个用于 Web,一个用于 Android,一个用于 iOS,等等)。确保它们都属于同一个项目!然后,在您的 Firebase 仪表板中,只需为您的 Web 应用程序使用客户端 ID 和 Secret。应该就是这样。您根本不需要将 Android 或 iOS 客户端 ID 告诉 Firebase,一切都应该正常工作。

    【讨论】:

      【解决方案2】:

      我在 Google Developer Console 中创建了两个项目。一个服务于 Android 客户端,另一个服务于 Web 客户端。我也遇到过您面临的类似问题/场景。

      这对我有用。 在 Firebase 登录和身份验证仪表板中,我使用了 Android 应用程序的客户端 ID。所以现在我没有空间来提供 Web 应用程序的客户端 ID(它正在使用另一个 Google 项目)。 Web API 中的任何 Firebase 身份验证方法(以下一种除外)在 Web 应用程序中均无效。但下面一个有效(一个使用 oAuthToken)

      ref.authWithOAuthToken("google", "<ACCESS-TOKEN>", function(error, authData) {
        if (error) {
          console.log("Login Failed!", error);
        } else {
          console.log("Authenticated successfully with payload:", authData);
        }
      });
      

      【讨论】:

        猜你喜欢
        • 2023-03-04
        • 2021-11-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-04-19
        相关资源
        最近更新 更多