我使用的是firebase和mongodb地图集。我已经在mongodb用户集合中保存了社交媒体登录凭据,如电子邮件、姓名、图片。但我无法保存电话登录凭据,如电话号码和uid。当我使用社交登录登录应用程序时,我得到的id如下图所示。

但是当我使用手机号码登录应用程序时,我无法获得id。可能是电话凭证未保存的原因。如何在电话登录时获取id值。在Mongodb realm应用程序中,我们像这样存储值。

你能帮我解决这个问题吗?提前谢谢。
发布于 2021-03-27 01:10:00
在这两种情况下,都应该使用firebase提供的UID。所有形式的firebase身份验证都提供此属性,因为这是Firebase识别用户的方式。如果您正在尝试将firebase身份验证凭据保存到mongodb,请使用UID。
您可以像这样找到一个社交身份验证提供者的uid。
firebase.auth()
.signInWithPopup(provider)
.then((result) => {
/** @type {firebase.auth.OAuthCredential} */
var credential = result.credential;
// This gives you a Google Access Token. You can use it to access the Google API.
var token = credential.accessToken;
// The signed-in user info.
var user = result.user;
const uid = user.uid
// ...
})
https://stackoverflow.com/questions/66820669
复制相似问题