美文网首页
【融职培训】Web前端学习 第9章 教务管理系统开发6 后台代码

【融职培训】Web前端学习 第9章 教务管理系统开发6 后台代码

作者: lmonkey_01 | 来源:发表于2020-07-07 14:32 被阅读0次

一、拦截器

在项目中,前台获取数据时,需要前台提供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);

【融职教育】在工作中学习,在学习中工作

相关文章

网友评论

      本文标题:【融职培训】Web前端学习 第9章 教务管理系统开发6 后台代码

      本文链接:https://www.haomeiwen.com/subject/xivaqktx.html