我在google oauth注册了一个用户。当我尝试使用相同的电子邮件注册Microsoft用户时,我得到了无尽的加载屏幕。我首先重定向到提供程序以使用提供程序凭据登录。然后我重定向回我的应用程序。没有抛出错误,我只是重定向到主登录页面,Firebaseui 小部件显示无尽的加载栏。
无尽加载屏幕
我尝试了来自firebasui github的演示,它的性能符合预期。当我使用相同的电子邮件注册时,会弹出一个错误,要求我使用我的谷歌帐户登录。在我的应用程序中,我使用 firebasui 角包装器 firebaseui-wrapper。我尝试只使用没有包装器的火碱,但结果是一样的。我正在侦听身份验证状态更改,但没有发出身份验证状态更改。可能是因为用户未在应用程序中进行身份验证,Firebaseui 向事件发射器公开 signInSuccessWithAuthResult 和 signInFailure。它们都不会发出任何错误或结果。
当我尝试注册已经在我的应用程序中向 Google 提供商注册的用户电子邮件时,不会抛出任何错误。Firebaseui 小部件应在小部件中显示一条通知,指出用户已退出
我的登录选项从火巴苏模块
signInFlow: 'popup',
signInOptions: [
auth.GoogleAuthProvider.PROVIDER_ID,
{
buttonColor:"#000000",
iconUrl: "https://learn.microsoft.com/en-us/azure/active-
directory/develop/media/howto-add-branding-in-azure-ad-apps/ms-
symbollockup_mssymbol_19.png",
provider: new auth.OAuthProvider('microsoft.com').providerId,
providerName: "Microsoft",
customParameters:{
tenant: 'myspace.com'
}
}
在我看来,Firebaseui至少对于Angular来说是一个垃圾库。我做了我的一个。
- 我的库只负责管理用户身份验证。
- 您可以选择如何显示登录面板。
- 增加了管理/翻译错误的可能性,但您必须制作自己的服务。在服务中,实现
AuthErrorHandler
,并在模块中将AuthErrorHandlerService
切换到新服务。将来会尝试用它做点什么。 - 内部存储库 您有"身份验证测试"文件夹示例应用程序。显示面板我正在使用
@angular/material
.
存储库 git:https://bitbucket.org/mises543/fire-ngx-auth
NPM:https://www.npmjs.com/package/@fire-ngx/auth