regex - Express 4 中的正则表达式用于捕获文件扩展名 .gz 的静态资源的所有请求

标签 regex node.js express

我想做这样的事情:

app.get('*.gz',function(req,res,next){

  res.set('Content-Encoding','gzip');
  next();

});

但我认为我使用的正则表达式不正确。正如示例所示,我正在寻找能够捕获对扩展名为 .gz 的静态 Assets 的所有请求的中间件。 (.gz 是通过 gzip 压缩的文件)。我的例子正确吗?

此外,如果有人可以提及 Expess 使用什么类型的正则表达式,那将帮助我查找引用资料。迄今为止,我从未在任何地方读过它们是标准 JS 正则表达式还是 Perl 风格还是什么?

最佳答案

我认为你可以尝试 app.use 而不是 app.get 并检查你正在寻找的静态文件是否正确,类似这样

app.use("*.gz" , function(req,res,next){
    console.log(req.originalUrl);
    next();
}

您必须将此代码放在提供静态文件之前( app.use(express.static(...) )

关于regex - Express 4 中的正则表达式用于捕获文件扩展名 .gz 的静态资源的所有请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32003363/

相关文章:

javascript - javascript中的上限十进制格式

R正则表达式匹配字符串的开头和结尾,忽略中间

node.js - 我应该如何在 MongoDB 中存储盐和密码

javascript - 使用静态文件在 Express 中进行简单重定向

regex - R:strsplit 中的正则表达式(查找 ", "后跟大写字母)

Java 正则表达式 - 匹配模式的第一次出现

javascript - 使用 Node/Express 路由 + HIJAX 模式进行渐进增强?

node.js - 如何执行并行命令

node.js - 如何使用 SessionID 从 RedisStore (connect-redis) 获取 session 数据?

javascript - Express "BasicAuth"并异步检查凭证