是否有必要在 auth user Record 和 firestore 中保存用户 NAME?
Is it necessary to save a user NAME in auth user Record and also in firestore?
来自 Link.. 它是这样的,其中用户名被保存到 firestore 和 auth_userRecord.
const newUser = {
displayName: data.name,
//...
};
const client = await admin.auth().createUser(newUser);
await admin.auth().setCustomUserClaims(client.uid, {
client: true
});
const clientDetails = {
name: data.name,
//...
};
await admin.firestore().collection('users').doc(client.uid).set(clientDetails);
现在我想知道用户何时更改 his/her 名称。我将不得不在 firestore 和 auth_userRecord.
中更新用户名
所以我的问题是为什么要在 firestore 和 auth_userRecord 中保存用户名?
这也取决于您的用例。例如,如果您正在构建一个应用程序,其中的数据是特定于用户的,例如存储笔记或简单的待办事项列表,那么将此类信息存储在 Firestore 中是完全可选的。
但是,如果您正在构建博客端或类似 Whosebug 的东西,您还需要在其中显示作者的详细信息,那么直接从 Firestore 获取该信息可能比从 Firebase 身份验证获取该用户的数据更容易。
请注意,如果您要从 Firebase Auth 获取用户数据(如显示名称),则必须使用 Cloud Functions,因为客户端 SDK 只能获取当前用户的数据。但是当数据存储在 Firestore(或实时数据库)中时,您可以直接从客户端获取用户信息。
来自 Link.. 它是这样的,其中用户名被保存到 firestore 和 auth_userRecord.
const newUser = {
displayName: data.name,
//...
};
const client = await admin.auth().createUser(newUser);
await admin.auth().setCustomUserClaims(client.uid, {
client: true
});
const clientDetails = {
name: data.name,
//...
};
await admin.firestore().collection('users').doc(client.uid).set(clientDetails);
现在我想知道用户何时更改 his/her 名称。我将不得不在 firestore 和 auth_userRecord.
中更新用户名所以我的问题是为什么要在 firestore 和 auth_userRecord 中保存用户名?
这也取决于您的用例。例如,如果您正在构建一个应用程序,其中的数据是特定于用户的,例如存储笔记或简单的待办事项列表,那么将此类信息存储在 Firestore 中是完全可选的。
但是,如果您正在构建博客端或类似 Whosebug 的东西,您还需要在其中显示作者的详细信息,那么直接从 Firestore 获取该信息可能比从 Firebase 身份验证获取该用户的数据更容易。
请注意,如果您要从 Firebase Auth 获取用户数据(如显示名称),则必须使用 Cloud Functions,因为客户端 SDK 只能获取当前用户的数据。但是当数据存储在 Firestore(或实时数据库)中时,您可以直接从客户端获取用户信息。