【用户】
LeanCloud 提供了一个特殊的用户类叫 AV.User
来自动处理有关用户的账户管理的功能。
AV.User
是 AV.Object
的一个子类。
通过AV.User注册。
这个调用会异步地在你的应用中创建一个新的用户。在它这样做之前,它同样会确认用户名和 email 在应用内都是唯一的。密码散列过后存储在 LeanCloud 中,用户密码不会以明文存储,也不会用明文向任何客户端发送密码。
注意我们使用了 signUp
方法而不是 save
方法。新的 AV.User
永远应该使用 signUp
方法来新建,而随后的用户的信息更新可以调用 save
来做。
使用login方法登陆。
用户修改密码,跟修改其他属性没有什么区别,前提是要求处于登录状态:
有时候,你希望验证用户的当前密码之后才允许更新密码,可以用 updatePassword
方法:
如果用户注册提供了 mobilePhoneNumber
属性,并且你希望验证用户手机号码的真实性,你可能希望发送一条短信,并且让用户输入短信中的验证码来确认手机号码的真实性:
为了发送短信,你需要在 控制台 > 设置 > 应用选项 > 用户账号 中启用 用户注册时,向注册手机号码发送验证短信。
验证成功后,用户的 mobilePhoneVerified
属性变为 true,并且调用云引擎的 AV.Cloud.onVerifed('sms', function)
方法。
当用户有填写 mobilePhoneNumber
的时候,可以使用手机和密码登录:
很多情况下,我们希望用户直接输入手机号码,获取短信然后注册或者登录,如果没有注册过就注册,否则就直接登录,我们提供了一个 API signUpOrlogInWithMobilePhone
来实现。
用户拿到短信后,使用下列代码注册或者登录:
当一个用户成功注册或者登录(使用 signIn
或 logIn
方法)后,该用户的信息就会保存在 localStorage 中。这样你可以从缓存中来读取该用户的数据,并认为该用户已经登录了。
你可以通过 logOut
来清除掉当前的用户:
用户成功注册或登录后,服务器会返回 sessionToken,用来认证该用户随后的请求,你可以通过AV.User.current()._sessionToken
来获取当前登录用户的 sessionToken。在知道用户的 sessionToken 的情况下,可以使用 AV.User.become()
方法来以该用户身份登录。
【关联】
关联一个 AV.User 的对象可以很快就见效。比如说,假设你有一个 blog 程序,为了保存一个用户的新 post 还有读取他们所有的 post:
requestMobilePhoneVerify
方法强制重新发送:verifyMobilePhone
来确认是否正确: