上节课我们讲了用户信息展示,今天我们来讲修改用户信息功能。
需求
用户修改自己的信息,如头像,昵称,手机号等,我们以修改昵称为例。
功能流程
通过用户凭据 token 获取到用户 id,在数据库 user 表中找到用户记录,把前端传来的昵称更新到记录中。
代码
routes/user.js
1
2
3
4
|
//更新个人信息
userrouter.put('/info',auth, function (ctx, next) {
return userApi.info(ctx)
})
|
api/user.js
1
2
3
4
5
6
|
const info = async(ctx) => {
const nickname = ctx.request.body.nickname
await userModel.updateUserInfo(userId,nickname)
ctx.body = resp.succeed()
return
}
|
model/usermodel.js
1
2
3
4
5
|
const updateUserInfo = async(userId,nickname)=>{
let sql = "update `user` set nickname=? where id=?"
const res = await mysql.exec(sql,[nickname,userId])
return res.affectedRows
}
|
运行
1
2
3
4
5
|
PUT http://localhost:3000/user/info
{
"nickname":"test"
}
|
总结
修改用户信息功能就讲完了,你掌握了吗?有问题欢迎到群里和志同道合的小伙伴一起交流。
下节课我们讲解图片上传,继续加油吧,Let’s go!