问题 如何使用我的自定义域myApp.com替换myApp-123.firebaseapp.com


我正在使用Firebase Auth signInWithPopup() 这绝对是伟大的。但 最初配置时,弹出窗口显示:

选择一个帐户以继续访问myApp-123.firebaseapp.com

我真的很想读它:

选择一个帐户以继续访问myApp.com

如何让弹出窗口显示我自己的域名?


3223
2018-06-29 02:49


起源



答案:


在我的解决方案中,我应该说我遵循的步骤有效。有可能我做了一些不是绝对必要的事情,但据我所知,此时我还没有破坏任何东西。

此工作流程(以及文档)有点分散,因为您必须同时调整Google Cloud Platform(GCP)凭据和Firebase身份验证。文档由此工作流程的每一方提供,但我无法找到涵盖整个工作流程的文档来进行此替换。

我首先调整了我的GCP凭据 1.) https://console.cloud.google.com //至少对我来说,这导致我参加了我的活跃GCP项目。

2.)使用gcp搜索字段并键入“凭据”,这会将您带到项目的API Manager / Credentials。

3.)“OAuth 2.0客户端ID”页面标题的底部,我只有一个条目,如果你有多个???不知道该告诉你什么,但要弄清楚哪一个你感兴趣。

4.)在页面右侧单击编辑图标(笔),您将获得一个新页面奖励...

3.)在标题“授权的JavaScript来源”下,在占位符为“http // www.example.com”的空白字段中添加自定义URI。你可能会有一个“https”域名,所以我会输入https // myApp.com

4.)在页面下方,您应该看到“授权重定向URI”,并在此下面的字段中显示“https://yourFirebaseApp.firebaseapp.com//认证/处理器“。”


8
2018-06-29 02:49



尝试在OAuth 2.0客户端ID下更改控制台页面中的域 You do not have permission to perform this action - Sagiv Ofek
如果您将应用程序部署到firebase,这似乎只能起作用。否则用户看到了 myapp.com/__/auth/handler 这很可能是404 :( - Jayen


答案:


在我的解决方案中,我应该说我遵循的步骤有效。有可能我做了一些不是绝对必要的事情,但据我所知,此时我还没有破坏任何东西。

此工作流程(以及文档)有点分散,因为您必须同时调整Google Cloud Platform(GCP)凭据和Firebase身份验证。文档由此工作流程的每一方提供,但我无法找到涵盖整个工作流程的文档来进行此替换。

我首先调整了我的GCP凭据 1.) https://console.cloud.google.com //至少对我来说,这导致我参加了我的活跃GCP项目。

2.)使用gcp搜索字段并键入“凭据”,这会将您带到项目的API Manager / Credentials。

3.)“OAuth 2.0客户端ID”页面标题的底部,我只有一个条目,如果你有多个???不知道该告诉你什么,但要弄清楚哪一个你感兴趣。

4.)在页面右侧单击编辑图标(笔),您将获得一个新页面奖励...

3.)在标题“授权的JavaScript来源”下,在占位符为“http // www.example.com”的空白字段中添加自定义URI。你可能会有一个“https”域名,所以我会输入https // myApp.com

4.)在页面下方,您应该看到“授权重定向URI”,并在此下面的字段中显示“https://yourFirebaseApp.firebaseapp.com//认证/处理器“。”


8
2018-06-29 02:49



尝试在OAuth 2.0客户端ID下更改控制台页面中的域 You do not have permission to perform this action - Sagiv Ofek
如果您将应用程序部署到firebase,这似乎只能起作用。否则用户看到了 myapp.com/__/auth/handler 这很可能是404 :( - Jayen


我问了firebase支持并得到了以下回复。中的物品 斜体 是我的补充。这与Done的答案大致相同,但具有自定义域。您无需在Firebase上托管您的应用。

-

嗨Jayen,

感谢您与我们联系。我很乐意为您提供帮助。

要在OAuth许可屏幕中更新firebase-project-id.firebaseapp.com,您需要具有Firebase托管的自定义域(Firebase控制台>托管>连接域)。这是因为 https://firebase-project-id.firebaseapp.com/__/auth/handler 由Firebase Hosting托管。您需要将自定义域指向firebase-project-id.firebaseapp.com。

连接自定义域时,如果您未在firebase上托管应用,请使用新的子域(例如app.yourdomain.com),不要重定向它。 Firebase将提示您添加DNS条目并自动获取SSL证书。

将自定义域名连接到Firebase项目后,您还应该按照以下步骤操作:

  1. 转到Firebase控制台>选择项目>身份验证>登录方法> Facebook>复制“完成设置,将此OAuth重定向URI添加到您的Facebook应用配置”下的URL。

  2. 用自定义域替换项目ID。它看起来像: https://yourdomain.com/__/auth/handler

  3. 转到GCP控制台>选择项目> API Manager>凭据>将#2中的链接添加到'授权重定向URI'
  4. 然后确保在您的应用配置中使用yourdomain.com作为authDomain而不是firebase-project-id.firebaseapp.com

    firebase.initializeApp({
        apiKey: ....,
        authDomain: 'yourdomain.com',
         ...
    });
    

如果您对此有任何其他疑问,请与我们联系。

问候,

-

在我的情况下,yourdomain.com是我托管我的网站的地方,所以我使用了app.yourdomain.com。


3
2018-01-07 04:10



我很高兴我再次用斜体字阅读你的消息..我很想使用新域名。现在我还配置了自定义子域名指向firebase及其工作。谢谢。 - Sameer