过滤器
在进入某个路由前先经过一个过滤逻辑,这个称之为过滤器
简单使用
const express = require('express')
const app = express();
let filter = (req, res, next) => {
if(req.params.name == 'admin' && req.params.pwd == 'admin'){
next()
} else {
next('用户名密码不正确')
}
}
app.get('/:name/:pwd', filter, (req, res) => {
res.send('ok')
}).listen(88)
运行规则
- 访问
http://localhost:88/admin/admin
- 首先会进入过滤器方法 filter
- next(),不带任选参数,表示会直接进入目标路由,执行路由逻辑
- next(”),带参数,表示不会进入目标路由,并抛出错误。
全局使用–use
表示进入所有目标路由前都会先进入过滤器方法
简单使用
const express = require('express')
const app = express();
let filter = (req, res, next) => {
if(req.params.name == 'admin' && req.params.pwd == 'admin'){
next()
} else {
next('用户名密码不正确')
}
}
app.use(filter);
app.get('/:name/:pwd', (req, res) => {
res.send('ok')
}).listen(88)
访问所有静态资源文件
app.use(express.static(path.join(__dirname, '/')));
所有 post 使用 body-parser
var bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({extended: false}));