cURL 转 JavaScript (fetch)

将 cURL 命令转换为 JavaScript fetch() 代码片段,包含请求头、请求体和方法

关键信息

分类
开发与 Web
输入类型
textarea, checkbox
输出类型
text
样本覆盖
4
支持 API
Yes

概览

本工具可以将 cURL 命令行请求快速转换为标准的 JavaScript fetch() 代码片段。它支持自动解析 HTTP 方法、请求头(Headers)和请求体(Body),并提供格式化请求体和添加注释的选项,帮助前端开发者快速在浏览器或 Node.js 环境中复现 API 请求。

适用场景

  • 需要将从浏览器开发者工具(Network 面板)复制的 cURL 命令转换为前端 JavaScript 代码时。
  • 在编写前端 API 调用函数,需要快速构建包含复杂请求头和 JSON 请求体的 fetch 请求时。
  • 在 Node.js 或浏览器控制台中快速调试第三方 API,需要将现有的 cURL 文档示例转化为 JS 代码时。

工作原理

  • 在输入框中粘贴您要转换的 cURL 命令行代码。
  • 根据需要勾选“格式化请求体”以美化 JSON 数据,或勾选“包含注释”以生成代码说明。
  • 工具将实时解析 cURL 参数(如 -X、-H、-d 等),并自动生成对应的 JavaScript fetch() 代码。

使用场景

快速将 API 文档中的 cURL 示例转换为前端项目的 fetch 请求代码。
在 Chrome 开发者工具中右键复制请求为 cURL,然后一键转为 JS 脚本进行自动化测试。
辅助新手开发者学习如何使用 JavaScript fetch API 构建带有 Headers 和 Body 的 HTTP 请求。

用户案例

1. 转换带 JSON 请求体的 POST 请求

前端开发工程师
背景原因
正在对接一个用户注册接口,API 文档只提供了 cURL 格式的示例。
解决问题
手动将 cURL 中的 Headers 和 JSON Body 拼写成 fetch 代码容易出错且效率低下。
如何使用
将 cURL 命令粘贴到输入框中,保持“格式化请求体”和“包含注释”勾选,即可在输出区域获取转换后的代码。
示例配置
curl -X POST https://api.example.com/users -H "Content-Type: application/json" -d '{"name":"Alice","role":"admin"}'
效果
获得结构清晰的 fetch 代码,其中 body 部分已自动使用 JSON.stringify 包装并进行了格式化排版。

2. 转换带 Authorization 标头的 GET 请求

全栈开发者
背景原因
需要在前端页面中调用一个受保护的 API,该 API 需要在请求头中携带 Bearer Token。
解决问题
需要快速生成包含特定 Authorization 标头的 fetch 请求模板。
如何使用
在输入框中输入包含 -H "Authorization: Bearer token123" 的 cURL 命令,直接复制生成的 JavaScript 代码。
示例配置
curl https://api.example.com/data -H "Authorization: Bearer token123"
效果
成功生成包含 headers: { "Authorization": "Bearer token123" } 的 fetch 代码,可直接粘贴至项目中使用。

用 Samples 测试

development

相关专题

常见问题

这个工具支持哪些 cURL 参数?

支持常见的参数,如 -X(方法)、-H(请求头)、-d/--data/--data-raw(请求体)以及请求的 URL。

转换后的代码可以在 Node.js 中运行吗?

可以,现代 Node.js(v18+)原生支持 fetch,或者您可以在旧版本中使用 node-fetch 库。

复杂的 JSON 请求体会如何处理?

工具会自动解析 JSON 字符串,并将其放入 body: JSON.stringify(...) 中,若开启格式化则会美化输出。

转换是在服务器端进行的吗?

不是,所有转换逻辑均在您的浏览器本地运行,不会上传您的敏感 API 密钥或请求数据。

支持文件上传(如 -F 或 --form)的转换吗?

本工具主要针对标准的 JSON、文本和 URL 编码请求进行转换,暂不支持复杂的 multipart/form-data 文件上传转换。

API 文档

请求端点

POST /zh/api/tools/curl-to-js-fetch

请求参数

参数名 类型 必填 描述
curlCommand textarea -
prettyBody checkbox -
includeComments checkbox -

响应格式

{
  "result": "Processed text content",
  "error": "Error message (optional)",
  "message": "Notification message (optional)",
  "metadata": {
    "key": "value"
  }
}
文本: 文本

AI MCP 文档

将此工具添加到您的 MCP 服务器配置中:

{
  "mcpServers": {
    "elysiatools-curl-to-js-fetch": {
      "name": "curl-to-js-fetch",
      "description": "将 cURL 命令转换为 JavaScript fetch() 代码片段,包含请求头、请求体和方法",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=curl-to-js-fetch",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

你可以串联多个工具,比如:`https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`,最多20个。

如果遇见问题,请联系我们:[email protected]