(五)Node接口搭建——使用全球公认头像gravatar

2019-07-08  本文已影响0人  彼得朱

本节主要内容:头像处理

前提:在https://en.gravatar.com/注册账号,然后上传头像,裁剪选择pg格式,因为后面用到的是pg格式。

1、使用第三方,gravatar

// $route POST api/users/register
// @desc 返回的请求json数据
// @access public
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 avatar = grvatar.url(req.body.email,{s:'200',r:'pg',d:'mm'});
                 

                const newUser = new User({
                    name: req.body.name,
                    email: req.body.email,
                    password: req.body.password,
                    avatar
                })
                //密码加密  需npm install bcrypt
                bcrypt.genSalt(10, function (err, salt) {
                    bcrypt.hash(newUser.password, salt, function (err, hash) {
                        //store hash in your password DB.
                        if (err) {
                            throw err;
                        }
                        newUser.password = hash;
                        newUser.save()
                            .then(user => res.json(user))
                            .catch(err => console.log(err));
                    });
                });
            }
        })



})

使用gravatar中的注册邮箱,点击链接地址将会得到自己在gravatar中上传的头像。

测试
测试
上一篇 下一篇

猜你喜欢

热点阅读