老师,这样写可以吗

老师,这样写可以吗

//index.js

const router = require('koa-router')()
const { User } = require('./db/model')
const loginCheck = require('./utils/loginCheck')
router.get('/login', loginCheck, async (ctx, next) => {
  const { username, password } = ctx.query
  const user = await User.findOne({
    username,
    password,
  })
  if (user != null && user.password) {
    ctx.session.userInfo = user
    ctx.body = {
      errno: 0,
      data: user,
    }
    return
  }
  ctx.body = {
    errno: -1,
    message: '用户名或密码错误',
  }
})
router.post('/register', async (ctx, next) => {
  ctx.request.body = {
    username: 'zhangsan',
    password: 'abc',
  }
  const { username, password } = ctx.request.body
  User.create({
    username,
    password,
  })

  const userList = User.find({
    username,
    password,
  })
  if (!userList != null) {
    ctx.body = {
      errno: 0,
      data: '注册成功',
    }
  }
})


正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,代码是可以的。如果更贴近实际的话,可以在注册路由中加上判断是否用户已存在,如果存在提示‘已有用户’,不存在则注册,会更好一些。

祝学习愉快!

  • 闪电打雷躲树下 提问者 #1
    //index.js
    
    const router = require('koa-router')()
    const { User } = require('./db/model')
    const loginCheck = require('./utils/loginCheck')
    router.get('/login', loginCheck, async (ctx, next) => {
      const { username, password } = ctx.query
      const user = await User.findOne({
        username,
        password,
      })
      if (user != null && user.password) {
        ctx.session.userInfo = user
        ctx.body = {
          errno: 0,
          data: user,
        }
        return
      }
      ctx.body = {
        errno: -1,
        message: '用户名或密码错误',
      }
    })
    router.post('/register', async (ctx, next) => {
      ctx.request.body = {
        username: 'zhangsan',
        password: 'abc',
      }
      const { username, password } = ctx.request.body
      //判断已有用户
      if (User.find(username)) {
        ctx.body = '用户已经存在'
      }
      User.create({
        username,
        password,
      })
    
      const userList = User.find({
        username,
        password,
      })
    
      if (userList != null) {
        ctx.body = {
          errno: 0,
          data: '注册成功',
        }
      }
    })

    老师是这样吗

    2022-11-11 11:00:00
  • if判断中还需要加上return;阻断下面代码创建

    https://img1.sycdn.imooc.com//climg/636dc7240934d46905790159.jpg

    2022-11-11 11:53:10
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师