HTTPie 转 cURL
把受支持的 HTTPie 命令转换为 POSIX cURL 片段
支持完整 HTTP(S) URL、方法、请求头、查询参数、平面 JSON 字段、文本表单、--raw 和基础认证。无字段时默认 GET,有正文时默认 POST。
完成转换后显示命令。
按 HTTPie 3.2.4 的无 stdin 子集转换,输出供 POSIX Shell 使用。不支持文件、嵌套字段、会话、Shell 展开及未知选项;跟随重定向仅支持无正文 GET。默认 User-Agent 等客户端头不逐项复制。
仅在浏览器处理,不执行命令、不发送请求、不保存命令草稿。复制结果可能包含认证信息。
完整说明还包括常见问题处理、操作示例、代码片段、FAQ 和相关工具,便于核对结果或排查问题。
工具说明
HTTPie 转 cURL 按 HTTPie 3.2.4 的明确子集生成 POSIX Shell 命令片段。支持完整 HTTP(S) URL、请求方法、有序请求头和查询参数、平面 JSON 字段及带类型的 JSON 值、URL 编码文本表单、原始正文与 ASCII 基础认证。普通数据字段默认生成 POST JSON,--form 的文本字段则使用 URL 编码。无效 JSON、会丢失精度的数值和未实现语法会明确报错。文件上传、嵌套字段名、stdin、会话及 Shell 展开不在支持范围内;跟随重定向仅支持无正文 GET。工具不执行命令、不发送请求,也不保存命令草稿。
生产可用片段
字符串字段和带类型字段组成同一正文
text
http https://api.example.com/users name=Alice active:=true
方法:POST
Content-Type: application/json
正文:{"name":"Alice","active":true}
URL 编码文本字段请使用 --form。[email protected] 这类文件上传语法不在本转换器的支持范围内。常见问题
为什么 name=Alice 会生成 POST JSON?
HTTPie 在有数据时默认 POST,没有数据时默认 GET。未选择 --form 时,普通 = 字段是 JSON 字符串,:= 则提供 JSON 类型值。
支持哪些选项?
支持 --json/-j、--form/-f、--raw、使用 ASCII 用户名:密码的 --auth/-a、--verify=yes/no,以及仅用于无正文 GET 的 --follow/-F。未知选项会明确报错。
重复项和空值会保留吗?
重复查询参数和请求头按顺序保留;同名 JSON 字段使用最后一个值。空字符串字段保持为空;Header: 移除默认头,放在引号内的 Header; 表示发送空值。
能转换上传、嵌套字段或 Shell 管道吗?
不能。文件引用、multipart 上传、嵌套字段名、stdin、会话、环境变量展开、管道和重定向会被拒绝。带类型的 JSON 值本身可以是数组或对象。
不同客户端发出的请求一定完全相同吗?
工具转换已支持的请求字段,但 User-Agent 等默认头和传输行为可能不同。运行前应核对结果;输出使用 POSIX Shell 语法,不适用于 PowerShell 或 cmd 的引号规则。
命令会执行或保存吗?
不会执行命令或发送请求,也不保存输入草稿;工具加载时会删除旧版命令草稿键。复制结果可能包含认证信息。
继续浏览