云引擎前端反代会 decode URI 字符串, 导致 Express 无法路由

主题居然是限制字数的,那么完整版的主题:
云引擎前端反代( nginx ?)会 decode URI 中的字符串, 导致 Express 无法正确找到路由

nginx 上一个同样的问题和解决方法:

问题描述:
当 Express 路由中遇到了这样的代码以及 URL 时,由于前端反代服务器会 decode URI 字符串,故而无法匹配到对应的处理程序:

app.get('/product/:serial', function(req, res){
  // code ...
});

// 使用这样的 URL 访问 : http://example.com/product/g3p%2FFpqel%2Bnc1iJH

建议的解决方法:

为保证本地开发、调试环境(3000 端口)与服务器上的行为相互一致,
建议 proxy_pass 行的结尾,不要使用任何路径(包括根路径 "/" )

你好,感谢反馈,我已将这个问题反应给了相关工程师,正在讨论。

你好,这个存在一定的安全风险,我们需要确认下。