如何在router.get()方法中传递url作为参数

How do I pass an url as parameter in router.get() method?

本文关键字:url 参数 方法 router get      更新时间:2023-09-26

我正在尝试传递一个urlhttp://localhost:3000/new/https://www.example.com到router.get('/new/:url', function..),但没有获取url(https://www.example.com)在req.params.url中,此链接http://localhost:3000/new/https://www.example.com导致404未找到错误。尽管其他参数工作良好。http://localhost:3000/new/www.example.com

代码:

var router = express.Router();
router.get('/new/:url', function(req, res...);

任何帮助都将不胜感激!

当您尝试附加正常的未编码URL作为查询参数时,它会导致新的路径

http://localhost:3000/new/https://www.example.com成为一个全新的URl,可能在您的服务器中不可用

传递URL的一种方法是按照@Juan Mendes提到的方式进行编码http://localhost:3000/new/https%3A%2F%2Fwww.example.com

但是,还有一个解决办法,使用通配符,如"/new/*"。动臂