Javascript Firebase,检测用户连接方式(谷歌、Facebook、电子邮件…)

Javascript Firebase,检测用户连接方式(谷歌、Facebook、电子邮件…),javascript,firebase,firebase-authentication,Javascript,Firebase,Firebase Authentication,有没有办法知道用户是如何在firebase中连接的(facebook、谷歌、电子邮件……)。 如果可能的话,我想用javascript获取这些信息。我假设您正在寻找providerId 这来自Firebase auth的官方文档(): var user=firebase.auth().currentUser; 如果(用户!=null){ user.providerData.forEach(函数(配置文件){ console.log(“登录提供程序:”+profile.providerId); l

有没有办法知道用户是如何在firebase中连接的(facebook、谷歌、电子邮件……)。
如果可能的话,我想用javascript获取这些信息。我假设您正在寻找
providerId

这来自Firebase auth的官方文档():

var user=firebase.auth().currentUser;
如果(用户!=null){
user.providerData.forEach(函数(配置文件){
console.log(“登录提供程序:”+profile.providerId);
log(“特定于提供程序的UID:+profile.UID”);
console.log(“名称:”+profile.displayName);
console.log(“Email:+profile.Email”);
log(“照片URL:+profile.photoURL”);
});
}
下面是最常用的提供者列表

                switch (user.providerData[0].providerId) {
                    case "facebook.com":
                        console.log("Used facebook to login");
                        break;
                    case "google.com":
                        console.log("Used facebook to login");
                        break;
                    case "password":
                        console.log("Used email and pass to login");
                        break;
                    case "twitter.com":
                        console.log("Used twitter to login");
                        break;
                    case "github.com":
                        console.log("Used github to login");
                        break;
                    case "apple.com":
                        console.log("Used apple provider to login");
                        break;
                    case "yahoo.com":
                        console.log("Used yahoo provider to login");
                        break;
                    case "hotmail.com":
                        console.log("Used hotmail provider to login");
                        break;
                    default:
                        console.log("user is signed in with unknown provider")
                    }
            });