我正在尝试创建一个端点,该端点包含我提取并用作参数的实际路径。例如,在以下路径中:
/ myapi / function / this / is / the / path
我想将“ / myapi / function /”与我的函数匹配,并将参数“ this / is / the / path”作为该函数的参数。
如果我尝试此操作,则显然不起作用,因为它仅匹配路径的第一个元素:
app.get("/myapi/function/:mypath")
如果我尝试这样做,但是没有显示在req.params
中,我不得不解析req.path
,这很麻烦,因为逻辑必须知道整个路径,而不仅仅是参数:
app.get("/myapi/function/*")
此外,通配符路由的使用似乎是discouraged as bad practice。我不确定我是否知道链接文章试图建议的替代方法,并且我没有将查询用作数据库调用的一部分,也没有上传任何信息。
执行此操作的正确方法是什么?
答案 0 :(得分:1)
您可以使用通配符
app.get("/myapi/function/*")
然后获取您的路径
req.params[0]
// Example
//
// For the route "/myapi/function/this/is/my/path"
// You will get output "this/is/my/path"