You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在curl命令中转义URL斜杠,适配/api/query/{ip}路由

如何在curl中正确传递带斜杠的网段参数到API路由?

针对你的问题,有几种可行的解决方法,具体如下:

1. 使用URL编码转义斜杠(最通用)

HTTP标准中,路径里的斜杠是分隔符,所以需要将网段中的/替换为URL编码值%2F。后端框架通常会自动解码这个值,将正确的1.1.1.0/24赋值给ip参数。

示例命令(对应路由/api/query/{ip}):

curl "http://0.0.0.0:8000/api/query/1.1.1.0%2F24"

如果你的实际路由是/api/query/ip/{ip},则调整为:

curl "http://0.0.0.0:8000/api/query/ip/1.1.1.0%2F24"

2. 用单引号包裹URL(适配后端支持含斜杠的路径参数)

如果你的后端路由已经配置允许{ip}参数包含斜杠(比如Flask用<path:ip>、FastAPI用path类型参数),可以直接用单引号包裹整个URL,避免shell解析转义字符,原样传递斜杠。

你之前用双引号加\\/无效的原因是:双引号内的\\会被shell解析为单个\,最终传递给后端的是1.1.1.0\/24,不符合预期格式。

示例命令:

curl 'http://0.0.0.0:8000/api/query/1.1.1.0/24'

3. 改用查询字符串传递参数(备选方案)

如果路径参数的方式始终有问题,可以把ip参数放到查询字符串中,这样无需处理路径中的斜杠,curl会自动处理必要的编码:

curl "http://0.0.0.0:8000/api/query?ip=1.1.1.0/24"

后端只需从查询参数中读取ip值即可。

内容的提问来源于stack exchange,提问作者Thong Nguyen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 18:33:23