快速URL参数function不会将加号(+)解码为空格

使用Express的URL参数function时,参数似乎自动解码。 也就是说,百分比编码的实体被parsing为它们的正常forms。 %20被replace为一个空格。

但是,plus +不会被replace为空格。 这大概是因为Express在内部使用decodeURIComponent() ,也不能用空格replaceplus + 。 简单的示例代码:

 app.get('/:sourceFile', function (req, res, next) { console.log(req.params.sourceFile); }); 

如果您请求/test%20test ,那么您将在控制台上进行test test 。 如果您要求/test+test ,那么您在控制台上得到test+test

在Express 4中有没有办法改变这种操作模式? 这是一个错误?

       

网上收集的解决方案 "快速URL参数function不会将加号(+)解码为空格"