curl 命令生成器
在表单中指定 HTTP 方法、URL、请求头、请求体和认证方式,即可生成可直接复制运行的 curl 命令。由于并不会真正发送请求,因此不受 CORS 限制。
常用 curl 选项一览
| 选项 | 说明 |
|---|---|
| -X, --request <method> | 指定 HTTP 方法(GET、POST、PUT、PATCH、DELETE 等)。省略时,无请求体默认为 GET,有请求体默认为 POST。 |
| -H, --header <header> | 添加一条请求头。如需添加多条,可重复使用 -H。 |
| -d, --data <data> | 发送请求体。若未指定 -X,会自动以 POST、Content-Type: application/x-www-form-urlencoded 的方式发送。 |
| -u, --user <user:password> | 以 "user:password" 格式指定 Basic 认证的用户名和密码。 |
| -k, --insecure | 跳过 SSL 证书验证。适用于使用自签名证书的开发环境,生产环境不建议使用。 |
| -L, --location | 当服务器返回 3xx 重定向时,自动跟随 Location 头指示的目标地址。 |
| -v, --verbose | 在标准错误输出中显示包含请求和响应头在内的详细通信过程,便于调试。 |
| --compressed | 附加 Accept-Encoding 头,请求并自动解压 gzip 等压缩格式的响应。 |
| -o, --output <file> | 将响应体保存到指定文件,而不是输出到标准输出。 |
| -F, --form <name=content> | 以 multipart/form-data 格式发送表单数据或文件。文件上传时指定 "@文件路径"。 |
使用技巧
- 生成的命令可以直接粘贴到 终端、Shell 脚本或 CI/CD 配置文件 中运行,所有值均已用单引号转义完毕。
- 如果方法仍为 GET 却输入了请求体,会显示警告。因为 curl 在省略
-X而使用-d时会自动以 POST 方式发送,此提示可帮助你避免意料之外的行为。 - 勾选"自动添加 Content-Type: application/json"后,会自动补上调用 JSON API 时容易遗漏的 Content-Type 头。
- Basic 认证和 Bearer 令牌的输入值均仅在浏览器内处理,绝不会发送到任何服务器。
- 生成的
-k(跳过证书验证)只是针对自签名证书本地开发环境的临时应对方案,请勿在生产环境的 API 中长期使用。
常见问题
不会。本工具仅用于拼装命令字符串,不会发送任何真实的 HTTP 请求。只有当你将生成的命令复制到终端并自行运行时,请求才会真正发出。如果想实际发送请求并查看结果,请使用姊妹工具"REST API 测试器"。
可以。只需将在 Postman 中构建的请求方法、URL、请求头和请求体输入本工具,即可生成可直接复制粘贴的 curl 命令,非常适合写入 CI/CD 脚本或文档。
技术上可行,但需要注意。当 curl 在省略
-X 选项的情况下使用 -d(请求体)时,会自动以 POST 方式发送。如果确实需要在保持 GET 的同时发送请求体,可在生成的命令后手动添加 -X GET。不会。你输入的所有认证信息都仅在浏览器内由 JavaScript 处理,绝不会发送到 toolbase.cc 的服务器。只有当你在自己的环境中运行生成的命令时,才会由该环境直接发往目标 API。
"-k(--insecure)"用于跳过 SSL 证书验证,仅应作为使用自签名证书的本地开发环境的临时应对方案。若在生产环境或涉及敏感信息的通信中使用,会带来中间人攻击的风险,因此不建议使用。
闲话 ― 为什么 curl 是"人人都在用却几乎无人知晓"的工具
curl 是瑞典工程师丹尼尔·斯坦伯格(Daniel Stenberg)于 1996 年开发的一款通过 URL 传输数据的命令行工具。它最初源于为 IRC 聊天机器人获取汇率信息的一个小脚本,此后逐渐发展成支持 HTTP、FTP、SMTP 等 25 种以上协议的庞大项目。
curl 被认为是全球使用最广泛的软件之一。智能手机、汽车、家电、游戏机乃至航天器(NASA 的火星探测任务中也有使用记录)等几乎所有联网设备内部都嵌入了它,据估计其安装量高达数百亿台规模。尽管普及程度如此之高,它在开发者以外的人群中却几乎无人知晓,是"幕后功臣"的典型代表。
2019 年,斯坦伯格因对 Web 基础技术的贡献获得 Linux 基金会表彰。他至今仍是 curl 项目的核心维护者,二十多年来一直谨慎地推进开发,以避免破坏向后兼容性而著称。
即便在 Postman 等图形化工具普及的今天,curl 命令依然被广泛用于 README、官方文档和 API 调试步骤中。原因很简单:curl 无需安装,几乎预装在所有 Linux 和 macOS 环境中,只需一条命令即可当场执行并分享结果,这种极高的可复现性是其他工具难以取代的。