感谢 Firebase v 3.9.0,我的社交 OAuth 在我的 ionic 应用程序中运行良好。我想做一个小小的改变。当提示登录时,它会显示“登录以继续
my-real-appname-12345f.firebaseapp.com
。”
如何将其更改为更用户友好的名称,例如应用程序的实际名称。
澄清一下,我使用 Firebase 来处理 Google 和 Facebook 的身份验证。两者的消息是相同的。
我询问了 Firebase 支持并得到了以下回复。 斜体的项目是我的补充。
为了更新 OAuth 同意屏幕中的
,您需要使用 Firebase 托管的自定义域(Firebase 控制台 > 托管 > 连接域)。这是因为
firebase-project-id.firebaseapp.com
由 Firebase 托管托管。您需要将自定义域指向https://firebase-project-id.firebaseapp.com/__/auth/handler
。
firebase-project-id.firebaseapp.com
连接自定义域时,如果您不在 Firebase 上托管应用程序,请使用新的子域(例如
)并且不要重定向它。 Firebase 将提示您在 DNS 服务器上添加条目并自动处理 SSL 证书。app.yourdomain.example
将自定义域连接到 Firebase 项目后,您还应该按照以下步骤操作:
- 转至 Firebase 控制台 > 选择项目 > 身份验证 > 登录方法 > Facebook > 复制“要完成设置,请将此 OAuth 重定向 URI 添加到您的 Facebook 应用配置中”下的 URL。
- 它看起来像
https://firebase-project-id.firebaseapp.com/__/auth/handler
将项目 ID 替换为您的自定义域。它看起来像:
https://yourdomain.example/__/auth/handler
转到 GCP Console > 选择项目 > API Manager > 凭据 > 将 #2 中的链接添加到“授权重定向 URI”
然后确保在应用程序配置中使用
作为 authDomain 而不是yourdomain.example
firebase-project-id.firebaseapp.com
firebase.initializeApp({ apiKey: ...., authDomain: 'yourdomain.example', ... });
就我而言,
yourdomain.example
是我托管网站的地方,所以我在需要的地方使用了app.yourdomain.example
。
https://app.yourdomain.example/__/auth/handler
authDomain: "app.yourdomain.example"
这对我有用:
authDomain: "insertyourdomainnamehere.example"
该错误引导我访问 https://console.cloud.google.com/apis/credentials(Google Cloud Platform > API 和服务 > 凭据)。
https://insertyourdomainnamehere.example/__/auth/handler
。然后它应该可以工作!现在应该显示“登录以继续
yourdomain.example
。”
对于我使用电子邮件登录的网络应用程序的情况,我只需要进入控制台上的项目设置,在
general
选项卡更改 Public-facing name
下,电子邮件中的 %APP_NAME% 已更改
您应该在 Google API 控制台 (https://console.cloud.google.com) 中进行这些修改。转到那里,找到您的项目的凭据,单击“OAuth 同意屏幕”,然后有一个文本框显示“向用户显示的产品名称”,将当前名称更改为您的应用程序的名称,然后单击“保存”。
我想我可能已经找到为什么有些人能够更改显示名称而其他人则不能的原因。检查您的“托管”选项卡。如果您已部署某些内容,则它可能会部署到您的登录页面上列出的同一 URL。尝试在该页面上添加您的域名,看看是否有效。
每个答案都引导我编辑 Google Cloud Console 中的“OAuth 2.0 客户端 ID”部分,但我在那里找不到我的项目。这就是我为让它出现而所做的:
在 Firebase 控制台中,转到项目设置。在“服务帐户”选项卡下,显示“所有服务帐户”,下面有一个链接。单击它时,它会引导我进入 Google Cloud Console,在那里我终于可以看到我的项目了。这是链接:https://console.cloud.google.com/apis/credentials