使用上下文在 firebase 云函数中获取用户 displayName

Dej*_*mes 2 node.js firebase firebase-authentication google-cloud-functions

在我的 firebase 云功能中,我可以使用以下命令获取在客户端进行呼叫的每个用户的电子邮件:

context.auth.token.email
Run Code Online (Sandbox Code Playgroud)

有没有办法获取用户的显示名称?我尝试过context.auth.token.name,但它仍然返回未定义的属性。

Dha*_*raj 5

DecodedTokencontext.auth.token类型的对象,不包含用户显示名称。您必须使用 Admin SDK 并通过 UID/电子邮件获取用户。

export const functionName = functions.https.onCall(async (data, ctx) => {
  const { uid } = ctx.auth?.token
  const user = await getAuth().getUser(uid)
  console.log(user.displayName)
  // ... 
})
Run Code Online (Sandbox Code Playgroud)