egg中间件匹配路由的时候可以传 options 么?
发布于 7 年前 作者 dlyt 3161 次浏览 来自 问答

比如 gzip 只针对 /static 前缀开头的 url 请求开启, 然后我想传 options 该怎么配置呢? 然后可以根据不同的匹配值,传不同的 options 么?

5 回复

看下中间件那块的文档,配置 match

@atian25 并没有传 options 的地方啊 文档只有这个吧

module.exports = {
  gzip: {
    match: '/static',
  },
};

其实 options 就是同名的 config 而已,你直接 app.config 去拿不就行了。

或者看文档那里,在 router 里面手动初始化

@atian25 在路由里是这样调用的 app.middleware.gzip({ type: 1 }), 因为很多路由都要使用, 所以我想拿出来, 但需要传 options(是{ type: 1}) 而且传的 options 却不一样. 我想问一下, 下面这种情况能拿出来配置么?: app.router.get(’/static/1’,app.middleware.gzip({ type: 1 }), controller.static.a); app.router.get(’/static/2’,app.middleware.gzip({ type: 1 }), controller.static.b);

app.router.get(’/public/1’,app.middleware.gzip({ type: 2 }), controller.public.a); app.router.get(’/public/2’,app.middleware.gzip({ type: 2 }), controller.public.b); 如果没有 options({ type: 1}) 我这么写就可以了

gzip: {
    match: '/static',
 },

不知道是否支持传 optins 的写法? 如果没有会考虑加上么?

回到顶部