用户确认重置密码接口
来源:4-10 代码作业-忘记密码页面&接口
君莫惜555
2020-11-10 10:24:30
# 粘贴全部相关代码,切记添加代码注释(请勿截图)
// 更新密码
async updatePassword (ctx) {
const body = ctx.query
if (body.key) {
const token = await getValue(body.key)
if (!token) {
ctx.body = {
code: 500,
msg: '链接已失效'
}
return
}
const obj = utils.getJWTPayload('Bearer ' + token)
const user = await User.findOne({ username: body.username })
if (user.id !== obj._id) {
ctx.body = {
code: 500,
msg: '用户名错误'
}
return
}
const hashPassword = await bcrypt.hash(body.password, 5)
const result = await User.updateOne({ username: body.username }, { password: hashPassword })
if (result.n === 1 && result.ok === 1) {
ctx.body = {
code: 200,
msg: '修改成功,请使用新密码登录'
}
}
} else {
ctx.body = {
code: 500,
msg: '参数不正确'
}
}
}
1回答
作业批改:100 分
作业评语:逻辑没有问题,关键是细节。
建议:
如果代码没有格式化,代码使用github上传
加入README + 项目注释
使用Gif或者图片截图展示结果。
相似问题