updateUser()

updateUser()用于更新用户信息,该方法用于更新已登录用户的用户数据。

使用 updateUser() 方法之前,用户必须先登录。默认情况下,如果对用户的电子邮箱进行更新,这将向用户当前的电子邮箱和新的电子邮箱发送确认链接。 若希望仅向用户的新电子邮箱发送确认链接,请在项目的电子邮箱认证提供程序设置中禁用 Secure email change 选项。这样可以避免同时向当前和新电子邮箱发送确认链接。

案例教程

案例1 (更新已认证用户的电子邮件地址)#

1const { data, error } = await supabase.auth.updateUser({email: 'new@email.com'})

案例2 (更新已认证用户的密码)#

1const { data, error } = await supabase.auth.updateUser({password: 'new password'})

案例3 (更新用户的元数据信息)#

1const { data, error } = await supabase.auth.updateUser({
2data: { hello: 'world' }
3})

案例4 (使用一次性随机码更新用户的密码)#

1const { data, error } = await supabase.auth.updateUser({
2password: 'new password',
3nonce: '123456'
4})

参数说明

  • attributes[必要参数]
    UserAttributes类型

    未提供说明。

      特性
    • 用户数据(data)[可选参数]
      object类型

      一个自定义的数据对象来存储用户的元数据。这映射到auth.users.user_metadata列。 data应该是一个JSON对象,包括用户的具体信息,如他们的名字和姓氏。

    • 邮箱(email)[可选参数]
      string类型

      该用户的电子邮件。

    • 密码(password)[可选参数]
      string类型

      用户的密码。

    • 电话(phone)[可选参数]
      string类型

      用户的电话。

  • 选项(option)[可选参数]
    object类型

      特性
    • emailRedirectTo[可选参数]
      string类型