🔍

首页 › 使用教程 › 开发与效率

cURL 转代码教程:把 curl 命令转换成 Python requests 和 JavaScript fetch,请求头、JSON 数据和认证

发布于 · 阅读约 2 分钟 · 用到的工具:cURL 转代码

一句话答案

把 curl 命令粘贴到转换器,选择 Python requests 或 JavaScript fetch,就能得到等价代码:-X 对应请求方法,-H 对应请求头,-d 对应请求体(JSON 会转成 json= 参数),-u 对应认证。分享代码前要删掉 Cookie、Token 等敏感信息。

本文目录
  1. 从浏览器复制 curl
  2. 用工具转换
  3. 参数对应关系
  4. 引号要写对
  5. 安全提醒
  6. 常见问题

从浏览器复制 curl

在 Chrome 或 Edge 中按 F12 打开开发者工具,切换到“网络(Network)”面板,右键某个请求,选择“复制 → 以 cURL 格式复制(bash)”,就得到了完整的 curl 命令。

用工具转换

  1. 粘贴命令:打开 cURL 转代码,把 curl 命令粘贴到输入框。
  2. 选语言:在下拉框选“JavaScript fetch”或“Python requests”。
  3. 复制代码:下方显示转换结果,点“复制结果”粘贴到项目中。
curl POST 请求(Content-Type: application/json,数据 {"name":"demo"})转换为 Python requests 代码
curl POST 请求(Content-Type: application/json,数据 {"name":"demo"})转换为 Python requests 代码
🌀 cURL 转代码
免费在线使用,文件和数据只在你的浏览器本地处理,无需注册。
打开工具 →

参数对应关系

curl 参数含义Python requestsJavaScript fetch
-X POST请求方法requests.postmethod: "POST"
-H请求头headers=headers: {}
-d / --data请求体data= 或 json=body:
-u user:pass基本认证auth=Authorization 请求头
-b / --cookieCookiecookies=Cookie 请求头

请求体是 JSON 时,Python 代码会用 json= 参数,requests 会自动序列化。JSON 格式不对时可以先用 JSON 格式化 检查。

引号要写对

在 bash 中,-d 后面的 JSON 要用单引号包住,例如 -d '{"name":"demo"}';如果漏了引号,JSON 里的双引号会被 shell 吃掉,转换出的请求体就变成了错误的内容。Windows 命令提示符的引号规则不同,建议从浏览器复制“bash”格式。

安全提醒

浏览器复制的 curl 往往带有 Cookie、Authorization 令牌等登录凭证:

  1. 不要把含凭证的命令或代码发到群聊、论坛或公开仓库;
  2. 写进代码时把密钥放到环境变量里;
  3. 转换在浏览器本地完成,但复制粘贴到别处时仍要注意。

URL 里的参数可以用 URL 解析 拆开查看,中文参数编码见 URL 编码。

常见问题

支持 GET 请求吗?

支持。没有 -X 和 -d 的 curl 命令默认是 GET 请求。

上传文件(-F)能转换吗?

复杂的表单上传可能无法完全转换,请对照转换结果手动检查。

转换出的 fetch 代码在 Node.js 里能用吗?

Node.js 18 及以上版本内置 fetch,可以直接使用;跨域限制只存在于浏览器中。