下面是我的代码部分
const crypto = require('crypto');//引入加密模块 //用sha256生成口令 function inapiToken(data) { return crypto.createHash('sha256','dht').update(data).digest('hex'); } //定义全局路由控制,控制inapi路由验证 app.all('/inapi/*', function (req, res, next) { if(inapiToken(req.cookies.userName)===req.session.login){ next(); }else{ res.json('未登录'); } });
这是我定义在app.js里面的,用于控制所有inapi路由进来的验证。
记得上一篇博文给大家说的是我的inapi路由控制失效了。
然后我发现彻底失效了
接下来就是各种百度,百度到了router.all
官方文档说的很好,能够检测全局路由,结果根本没用,是咋的就是咋的。
最后还是app.all拯救了我。
这个方法其实很简单,就是监控路由前缀为inpai的,如果没问题那么就过去,有问题就不通过,无法调用接口。