- 【融职培训】Web前端学习 第9章 教务管理系统开发6 后台代码
- 【融职培训】Web前端学习 第9章 教务管理系统开发5 前端代码
- 【融职培训】Web前端学习 第9章 教务管理系统开发3 接口文档
- 【融职培训】Web前端学习 第9章 教务管理系统开发7 项目发布
- 【融职培训】Web前端学习 第9章 教务管理系统开发1 开发流程
- 【融职培训】Web前端学习 第9章 教务管理系统开发2 UI图展
- 【融职培训】Web前端学习 第9章 教务管理系统开发4 数据库模
- 【融职培训】Web前端学习 第6章 jQuery Ajax 3
- 【融职培训】Web前端学习 第6章 jQuery Ajax 1
- 【融职培训】Web前端学习 第6章 jQuery Ajax 4
一、拦截器
在项目中,前台获取数据时,需要前台提供token信息,后台验证才可以获取数据,验证代码如下。
1// 在router中请求中使用中间件 4router.get('/getclazz', app.middleware.checktoken(),controller.clazz.get); 5 6// app/milldeware/checktoken.js 8// 检验前台的请求头中是否存在token 9module.exports = () => {10returnasyncfunction (ctx, next) {11if(ctx.request.header['token']) {12 await next();13}else {14ctx.status = 401;15ctx.body = {16message: '没有token'17 }18return;19 }20 }21};
二、后台生成token
在登录时,后台需要生成token返回给前端,生成token代码如下:
const token =this.app.jwt.sign({ username:username },this.app.config.jwt.secret);
三、查询数据
1// 联查表中的数据2const studentList = awathis.app.model.Students.findAll({3 include: [{ 4model:this.app.model.Clazz,5as: 'clazz'6 }]7});
四、增加数据
在前端完成增加班级或学生的时候,后台要接受前端的数据,并将它传到数据库里面,具体代码如下所示:
1// 获取前端传的页面2let name =this.ctx.request.body.name;3const clazz = {4 clazzname: name5 }6//添加至数据库7awaitthis.app.model.Clazz.creat(clazz);
五、删除数据
前端在完成删除的时候,后台需要删除对应id的数据库里面的数据,再传给前端,删除代码如下:
1// 获取对应的id 2let id =this.ctx.params.id 3// 查询需要删除的学生名 4const student = awaithis.app.model.Students.findOne({ 5 where: { 6 id: id 7 } 8 }) 9// 删除10student.destroy()
六、修改数据
前端执行修改点击时,后台需要获取前端对应的id以及修改的信息,修改后传到数据库里,再返回给前端,代码如下所示:
1// 获取对应的id 2let id =this.ctx.params.id 3// 获取需要修改的值 4let putclazzname =this.ctx.request.body.putclazzname 5// 修改值 6let row = { 7 clazzname: putclazzname 8 }, 9options = {10 where: {11 id: id12 }13 }14// 返回给数据库15awaitthis.app.model.Clazz.update(row, options);
网友评论