cURL 转代码
粘贴 curl 命令,先核对它发的请求,再复制成 7 种语言的代码。
解析与生成都在当前浏览器标签页完成:不上传、不保存、不发送,连本站也收不到。
粘贴一条 curl 命令,这里会显示请求摘要和代码。
怎么用
- 粘贴一条 curl 命令——来自 DevTools 的 Copy as cURL、API 文档或聊天记录,边输入边出代码。
- 先看摘要行:方法、URL、请求头数量和请求体大小。摘要对,下面的代码才对。
- 切换目标语言:代码和下载文件名跟着变,输入框里的命令不动。
- 黄色提示列出代码没有体现的内容(代理、重定向、shell 变量);红色错误会停止生成,而不是给半份请求。
- 复位会清空输入并回到 Python;刷新页面效果相同。
示例
命令
curl -X POST 'https://httpbin.org/anything?from=zh' \
-H 'Content-Type: application/json' \
-d '{"name": "张三", "city": "上海"}'Python
import requests
url = "https://httpbin.org/anything?from=zh"
headers = {
"Content-Type": "application/json",
}
data = "{\"name\": \"张三\", \"city\": \"上海\"}".encode("utf-8")
response = requests.request("POST", url, headers=headers, data=data)
print(response.status_code)
print(response.text)摘要和代码都由上面这条命令生成——本工具不会真的访问 httpbin。等价范围是方法、URL、请求头、请求体、Basic/Bearer 认证与超时。
规则、上限与已知问题
- 不支持文件上传:-F、-T 与 @文件 会直接报错,避免生成少文件的代码。
- 不执行 shell:变量、命令替换、管道与多命令都不展开;$TOKEN 原样保留并提示。
- 一条命令只处理一个 URL:多余 URL 会被忽略并提示,不生成循环。
- 不还原传输层选项:-L、-k、代理、客户端证书、HTTP 版本、重试与压缩只给提示;生成代码使用各客户端默认行为。
- 不补 curl 的隐式默认值:不会添加 User-Agent: curl/… 与 Accept: */*;需要固定时请写 -A / -H。
- 只支持 POSIX 引号:单引号、双引号、$'...' 与反斜杠换行;不解析 Windows CMD 的转义。
- 重复请求头在 Go、PHP、Java、C#、Ruby 中保留;Python 与 JavaScript 的字典会合并成 ", "。
- GET/HEAD 带请求体照原样生成并提示——fetch 会拒绝这种请求。
- 不保存:刷新即清空;分享按钮只分享页面链接,绝不含命令内容。
- 这里只做转换,不会发送请求;想看到响应请用 API 客户端。
相关工具
转换完成后可能用到。