[英]SyntaxError: Unexpected token } in JSON at position
我正在尝试通过使用Passportjs创建注册路线。 在使用邮递员的请求下,我在位置119的JSON中收到以下错误:SyntaxError:Unexpected token}
在JSON.parse(<anonymous>)下面是我的代码:
const express = require("express");
const router = express.Router();
const gravatar = require("gravatar");
const bcrypt = require("bcryptjs");
const jwt = require("jsonwebtoken");
const keys = require("../config/keys");
const passport = require("passport");
//load input validation
const validateRegisterInput = require("../validation/register");
//user model
const User = require("../models/User");
router.get("/test", (req, res) => res.json({ msg: "user route works" }));
//post - api/users/register
router.post("/register", (req, res) => {
const { errors, isValid } = validateRegisterInput(req.body);
//check validation
if (!isValid) {
return res.status(400).json(errors);
}
User.findOne({ email: req.body.email }).then(user => {
if (user) {
errors.email = "Email already exists";
return res.status(400).json(errors);
} else {
const avatar = gravatar.url(req.body.email, {
s: "200", // Size
r: "pg", // Rating
d: "mm" // Default
});
const newUser = new User({
name: req.body.name,
email: req.body.email,
password: req.body.password,
avatar
});
bcrypt.genSalt(10, (err, salt) => {
bcrypt.hash(newUser.password, salt, (err, hash) => {
if (err) throw err;
newUser.password = hash;
newUser
.save()
.then(user => res.json(user))
.catch(err => console.log(err));
});
});
}
});
});
module.exports = router;
以下是我使用邮递员的要求:
{
"name":"Harry",
"email": "harrypotter@gmail.com",
"password" : "harry",
"avatar" : "https://image.jpg",
}
根据您的代码,您需要在体内发送password2。 因此,请使用下面的curl进行请求,您会没事的。
curl -X POST \\ http:// localhost:8080 / api / users / register \\ -H'缓存控制:无缓存'\\ -H'内容类型:application / json'\\
-H'邮递员令牌:c437c084-def1-427f-bf43-33b92a747244'\\ -d'{“ name”:“ Harry”,“ email”:“ harrypotter@gmail.com”,“ password”:“ harry12”, “ password2”:“ harry12”,“头像”:“ https://image.jpg ”}“
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.