当前位置:   article > 正文

node.js实战记录2 获取用户信息、更新用户信息、重置密码、更换头像_nodejs获取当前用户及组

nodejs获取当前用户及组


1. 获取用户的基本信息

在这里插入图片描述

1.初始化路由模块,初始化路由处理函数模块
router目录下新建userInfo.js路由模块,在router_handler目录下新建userInfo.js路由处理函数模块,初始化代码如下:
在这里插入图片描述
在这里插入图片描述
app.js中还要导入并使用路由模块:
在这里插入图片描述
(具体的步骤跟前面初始化用户路由模块user.js其实是一样的)
2.定义sql语句,在数据库中查找用户的基本信息
在这里插入图片描述
测试:
在这里插入图片描述
在这里插入图片描述


2. 更新用户的基本信息

在这里插入图片描述
1.定义相关的路由和路由处理函数模块
router/userInfo.js路由模块中新增更新用户基本信息的路由,
router_handler/userInfo.js路由处理函数模块中新增更新用户基本信息的路由处理函数
在这里插入图片描述
在这里插入图片描述
2.验证表单数据
请求这个接口需要在请求体中带上三个参数,那么这三个参数的合法性需要在服务端进行校验
在这里插入图片描述
schema/user.js验证规则模块中,定义idnicknameemail的验证规则,并向外共享这个验证规则对象:
在这里插入图片描述
/router/userinfo.js路由模块中导入验证数据合法性的中间件验证规则对象,在更新用户基本信息的路由中声明中间件,对当前请求的数据进行验证
在这里插入图片描述
3.定义sql语句,在数据库中更新用户的基本信息
(要更新的信息就在被携带在请求体中,req.body就能拿到)
在这里插入图片描述
测试:
在这里插入图片描述
在这里插入图片描述


3. 重置密码

在这里插入图片描述

1.定义相关的路由和路由处理函数模块
router/userInfo.js路由模块中新增重置密码的路由,
router_handler/userInfo.js路由处理函数模块中新增重置密码的路由处理函数
在这里插入图片描述
在这里插入图片描述
2.验证表单数据
请求这个接口需要在请求体中带上旧密码和新密码这两个参数,那么这两个参数的合法性需要在服务端进行校验,而且新密码与旧密码不能一致
在这里插入图片描述
schema/user.js验证规则模块中,向外共享如下验证规则对象:
在这里插入图片描述
/router/userinfo.js路由模块中导入验证规则对象,在重置密码的路由中声明中间件,对当前请求的数据进行验证:
在这里插入图片描述
3.根据 id 查询用户是否存在
在这里插入图片描述
4.判断提交的旧密码是否正确
(这里的旧密码在req.user中是获取不到的,因为当时为了生成token我们剔除了其中的密码值,实际上旧密码被我们携带在请求体中)
在这里插入图片描述
5.将新密码进行加密,更新到数据库中
在这里插入图片描述
测试:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


4. 更换头像

在这里插入图片描述

1.定义相关的路由和路由处理函数模块
router/userInfo.js路由模块中新增更新用户头像的路由,
router_handler/userInfo.js路由处理函数模块中新增更新用户头像的路由处理函数
在这里插入图片描述
在这里插入图片描述
2.验证表单数据
请求这个接口需要在请求体中带上参数,那么这参数的合法性需要在服务端进行校验
在这里插入图片描述
schema/user.js验证规则模块中,定义avatar的验证规则,并向外共享这个验证规则对象:
在这里插入图片描述

/router/userinfo.js路由模块中导入验证规则对象,在重置密码的路由中声明中间件,对当前请求的数据进行验证:
在这里插入图片描述
3.定义sql语句,在数据库中更新用户的头像
(这里的pictrue是因为数据库开字段的时候就打错了,现在将错就错了

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/118896
推荐阅读
相关标签