系列第一个05
Node接口搭建-使用全球公认头像gravatar
-
需要使用它,可以
npm install gravatar
,可以使用npm 去找下 npmjs,发现gravatar 去查看地址 www.npmjs.com/package/gra… 这是后你应该去找网站 cn.gravatar.com/site/check/… 去注册然后上传照片
const express = require('express');
const router = express.Router();
const bcrypt = require("bcrypt");
var gravatar = require('gravatar'); // 头像
const User = require("../../models/User");
router.get('/test', (req, res) => {
res.json(
{
code: 0,
msg: "test数据获取成功"
}
)
})
// 注册接口
router.post('/register', (req, res) => {
// console.log(req.body.email);
const rObj = req.body;
// 要注册,需要先去验证下是否邮箱重复
User.findOne({ email: rObj.email })
.then(user => {
if (user) {
res.status(200).json({
code: 2,
msg: `当前邮箱 { ${rObj.email} }已经存在`,
})
} else {
const avatar = gravatar.url(req.body.email, {s: '200', r: 'pg', d: 'mm'});
const newUser = new User({
name: rObj.name,
password: rObj.password,
avatar,
email: rObj.email
});
// 我们需要对密码进行加密
bcrypt.genSalt(10, (err, salt) => {
bcrypt.hash(newUser.password, salt, (err, hash) => {
if(err) throw err;
newUser.password = hash;
})
});
newUser.save()
.then(user => {
res.status(200).json(
{
code: 0,
msg: "新增用户成功!",
data: user
}
)
})
.catch(err => res.json(
{
code: 1,
msg: "操作失败,请重试!"
}
));
}
})
});
module.exports = router;
/**
{
cdoe: 0 成功
code:1 失败
code:2 数据已存在或字段已存在
code:3 数据未作任何更新
code:110 登陆超时或者登陆失效,或者非法登陆用户
}
*/
复制代码