我们用户的所有操作都是要基于token来进行操作,所以我们在profile.js中引入
passport模块
const passport = require("passport");
- 添加信息接口
router.post("/add",passport.authenticate("jwt",{session:false}),(req,res)=>{
const profileFileds = {}
if(req.body.type)profileFileds.type = req.body.type
if(req.body.describe)profileFileds.describe = req.body.describe
if(req.body.income)profileFileds.income = req.body.income
if(req.body.expend)profileFileds.expend = req.body.expend
if(req.body.cash)profileFileds.cash = req.body.cash
if(req.body.remark)profileFileds.remark = req.body.remark
new Profile(profileFileds).save()
.then((profile)=>{
res.json(profile)
})
})
- 获取所有的信息接口
router.get("/",passport.authenticate("jwt",{session:false}),(req,res)=>{
Profile.find()
.then(profile=>{
if(!profile){
return res.status(404).json("没有任何内容!")
}
res.json(profile);
})
.catch(err=>{
res.json("查询错误!");
})
})
- 获取单个信息接口
router.get("/:id",passport.authenticate("jwt",{session:false}),(req,res)=>{
Profile.findOne({
_id:req.params.id
})
.then(profile=>{
if(!profile){
return res.status(404).json("没有任何内容!")
}
res.json(profile);
})
.catch(err=>{
res.json("查询错误!");
})
})
- 编辑信息接口
router.post("/edit/:id",passport.authenticate("jwt",{session:false}),(req,res)=>{
const profileFileds = {}
if(req.body.type)profileFileds.type = req.body.type
if(req.body.describe)profileFileds.describe = req.body.describe
if(req.body.income)profileFileds.income = req.body.income
if(req.body.expend)profileFileds.expend = req.body.expend
if(req.body.cash)profileFileds.cash = req.body.cash
if(req.body.remark)profileFileds.remark = req.body.remark
Profile.findOneAndUpdate(
{_id:req.params.id},
{$set:profileFileds},
{new:true}
).then(profile=>{
res.json(profile)
})
})
- 删除信息接口
router.delete("/delete/:id",passport.authenticate("jwt",{session:false}),(req,res)=>{
Profile.findOneAndRemove({
_id:req.params.id
})
.then(profile=>{
profile.save()
.then(profile=>{
res.json(profile)
})
}).catch(err=>{
res.json("删除失败")
})
})