60 lines
1.2 KiB
JavaScript
60 lines
1.2 KiB
JavaScript
const User=require("../model/user")
|
|
const jwt = require('jsonwebtoken')
|
|
|
|
const create=(req,res,next)=>{
|
|
let obj=new User({
|
|
name: req.body.name,
|
|
account: req.body.account,
|
|
password: req.body.password,
|
|
role: req.body.role
|
|
})
|
|
obj.save()
|
|
.then(data=>{
|
|
res.json({
|
|
data
|
|
})
|
|
})
|
|
.catch(err=>{
|
|
console.log(err)
|
|
res.json({
|
|
message:'create is fail.'
|
|
})
|
|
})
|
|
}
|
|
|
|
const list=(req,res,next)=>{
|
|
User.find()
|
|
.then(data=>{
|
|
res.json({
|
|
data
|
|
})
|
|
})
|
|
.catch(err=>{
|
|
console.log(err)
|
|
res.json({
|
|
message:'list is fail'
|
|
})
|
|
})
|
|
}
|
|
|
|
const login=(req,res,next)=>{
|
|
const config={
|
|
PRIVATE_KEY: 'yiyuan0911',
|
|
JWT_EXPIRED: 3600
|
|
}
|
|
User.find({account:req.body.account})
|
|
.then(response=>{
|
|
if (response.password!==req.body.password){
|
|
res.status(401)
|
|
return
|
|
}
|
|
const token=jwt.sign({data:response,exp: config.JWT_EXPIRED }, config.PRIVATE_KEY)
|
|
res.json({
|
|
token
|
|
})
|
|
})
|
|
}
|
|
|
|
module.exports={
|
|
list,create,login
|
|
} |