Skip to content
关注公众号,获取新课通知

注册功能


控制器 app/conroller/user.js

js
async reg() {
       let { ctx, app } = this;
       // 参数验证
       ctx.validate({
           username: {
               type: 'string',
               required: true,
               range: {
                   min: 5,
                   max: 20
               },
               desc: '用户名'
           },
           password: {
               type: 'string',
               required: true,
               desc: '密码'
           },
           repassword: {
               type: 'string',
               required: true,
               desc: '确认密码'
           }
       }, {
           equals: [
               ['password', 'repassword']
           ]
       });
       let { username, password } = ctx.request.body;
       // 验证用户是否已经存在
       if (await app.model.User.findOne({
           where: {
               username,
           }
       })) {
           ctx.throw(400, '用户名已存在');
       }
       // 创建用户
       let user = await app.model.User.create({
           username,
           password
       });
       if (!user) {
           ctx.throw(400, '创建用户失败');
       }
       ctx.apiSuccess(user);
   }

路由 app/router.js

js
// 用户注册
router.post("/reg", controller.user.reg);