vuvivian's blog

越努力,越幸运.

vue/vue实战/vue cli3.0+element+mangoDB/(五)新建注册接口

vuvivian's Avatar 2020-04-06

  1. 1. 1. 注册接口使用的post方式
  2. 2. 2. 安装body-parser
  3. 3. 3. 在server .js中引入body-parser并使用其中间件
  4. 4. 4. 接下来可以在接口里读写数据库了,首先需要先把建立的model引进来
  5. 5. 5. 注册之前需要先判断该用户(邮箱)是否存在,如果已经存在的提示邮箱已被注册,否则创建新用户

1. 注册接口使用的post方式

1
2
3
router.post('/register', (req, res) => {
console.log(req.body);
})

需要注意的是,使用post方式,必须通过工具(urlencode)来获取body的内容

2. 安装body-parser

npm install body-parser

3. 在server .js中引入body-parser并使用其中间件

1
2
3
const bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({extended: false}));
app.use(bodyParser.json());

这时候可以在postman中以x-www-form-urlencoded格式测试接口,在控制台可以看到打印出来的req.body就是你的传参

4. 接下来可以在接口里读写数据库了,首先需要先把建立的model引进来

const User = require('../../models/User');

5. 注册之前需要先判断该用户(邮箱)是否存在,如果已经存在的提示邮箱已被注册,否则创建新用户

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
router.post('/register', (req, res) => {
console.log(req.body);
// 查询数据库中是否拥有邮箱
User.findOne({email: req.body.email})
.then((user) => {
if(user){
return res.status(400).json({email: "邮箱已被注册"});
} else {
const newUser = new User({
name:req.body.name,
email:req.body.email,
password: req.body.password
});
newUser.save()
.then(user => res.json(user))
.catch(err => console.log(err))
}
})
})
本文最后更新于 天前,文中所描述的信息可能已发生改变