Fastify 路由不适用于特定 url

pai*_*nor 8 javascript node.js fastify

我的代码中有这个路由器

fastify.get('/:link', (req, reply) => {
    req.params.url = req.host+req.url;
    reply.view("template.ejs",req.params);

});
Run Code Online (Sandbox Code Playgroud)

我正在尝试捕获 URL 并在模板中处理它们。URL 均已encodeURIComponent转义。由于某种原因,某些 URL 会返回 404 not found,我不确定为什么。这是有效的链接。

http://127.0.0.1:3000/https%3A%2F%2Fupload.wikimedia.org%2Fwikipedia%2Fcommons%2Fe%2Fee%2FChain_link_icon.png

这是行不通的。

http://127.0.0.1:3000/https%3A%2F%2Fs7386.pcdn.co%2Fwp-content%2Fuploads%2F2016%2F07%2Fadd-on-direct-link-tracking-771x386.png

错误是


{
"message": "Route GET:/https%3A%2F%2Fs7386.pcdn.co%2Fwp-content%2Fuploads%2F2016%2F07%2Fadd-on-direct-link-tracking-771x386.png not found",
"error": "Not Found",
"statusCode": 404
}
Run Code Online (Sandbox Code Playgroud)

我使用的是带有节点 v12.8.0 和 fastify 2.8.0 的 Windows 10

pai*_*nor 10

原因是 URL 超过 100 个字符,由于某种原因达到了最大值。

可以使用maxparamlength更改它。我也在这里问过,希望将来错误会被改变。