cURL 转代码
把 cURL 命令转成 fetch / axios / requests,解析在浏览器本地完成,命令里的令牌不会上传。
使用说明
把浏览器「Copy as cURL」得到的命令粘贴进来,解析请求方法、请求头、请求体与 URL,生成 fetch、axios 或 Python requests 三种可直接运行的代码;解析全部在浏览器本地完成,命令里的令牌不会上传。
- 在浏览器开发者工具的 Network 面板找到目标请求,右键「Copy as cURL」(Chrome 另有 bash 与 cmd 两种格式,本页按 bash 格式解析),整条命令粘贴到输入框,带反斜杠续行也能直接粘。
- 在「目标语言」下拉里选择 fetch(浏览器与 Node 18+ 可用)、axios 或 Python requests,切换语言后需要再点一次「转换」重新生成。
- 工具会识别 -X/--request、-H/--header、-d/--data/--data-raw、-u/--user、--compressed 以及命令末尾的 URL;-d 出现多次时按 curl 的规则用 & 拼接成请求体。
- 无法转换的参数不会写进代码,结果上方「已忽略的参数」会逐条列出,例如 -s、-k、-L、--url、-F;确认这些参数只影响日志、证书校验或输出方式后再使用生成的代码。
- 点「复制」取走代码,或按语言点「下载」保存成 .ts / .js / .py 文件;命令为空或找不到 URL 时会直接提示,不会输出半成品代码。
常见问题
- -u 里的用户名密码去哪了?
- 工具会把「用户名:密码」按 Basic 认证规则做成 Base64,并以 Authorization: Basic xxx 请求头写进生成的代码,三种语言都一样。注意这段编码只是明文可还原的 Base64,不是加密,分享代码前记得把真实口令替换掉。
- 哪些参数会被忽略?
- 只解析 -X、-H、-d/--data/--data-raw、-u、--compressed 与 URL,其余参数(如 -s 静默、-k 跳过证书校验、-L 跟随跳转、-A 设置 UA、-b 携带 cookie、-F 表单上传、--url 指定地址等)都不参与生成,并会在结果上方列出清单。若关键信息写在被忽略的参数里,需要手工补进生成后的代码。
- -d 里如果是 @文件名怎么办?
- 浏览器读不到本地文件,工具会把 @文件名 当普通文本写进请求体,同时给出提示。需要传文件内容时,请先打开文件把内容粘贴到 -d 后面,或改用 -F 表单上传并在自己的代码里实现。