cURL 转 Fetch

将 curl 命令转换为 JavaScript 的 fetch() 调用。

你的 curl 命令在浏览器本地转换,绝不会上传,但请避免将真实的生产令牌或凭据粘贴到任何工具中。

在检查 API URL 吗?试试 URL 解析器。

关于 cURL 转 Fetch

这款 curl 转 fetch 转换器会接收你从终端、浏览器 DevTools 或 API 文档复制的 curl 命令,并将其改写为可直接运行的 JavaScript fetch() 调用。作为 curl 转 fetch 转换器,它会解析 -X、-H、-d、--data-raw、--json、-u、-b 和 -G 等常见标志,推断出正确的 HTTP 方法,设置合理的 Content-Type 请求头,并用 JSON.stringify 美化 JSON 请求体。用它把 curl 请求迁移到前端代码、Node 脚本或快速测试中,无需手动翻译语法。它专为开发者、QA 工程师以及任何需要快速完成 curl 转 javascript 的人而打造。转换完全在你的浏览器中运行,因此你粘贴的命令在本地处理,绝不会离开你的设备。

功能特性

如何使用 cURL 转 Fetch

  1. 将你的 curl 命令粘贴到 cURL 命令框中。
  2. 在右侧的输出面板中查看生成的 fetch() 等价代码。
  3. 查看警告横幅,了解被忽略或调整过的标志。
  4. 点击复制获取 fetch 代码,或将其下载为 request.js。

示例

输入

curl https://api.example.com/users \
  -H "Authorization: Bearer TOKEN" \
  -d '{"name":"Ada"}'

输出

const response = await fetch("https://api.example.com/users", {
  method: "POST",
  headers: {
    "Authorization": "Bearer TOKEN",
    "Content-Type": "application/x-www-form-urlencoded"
  },
  body: "{\"name\":\"Ada\"}",
});

const data = await response.text();

带 -d 请求体时默认使用 POST 和 form-urlencoded 的 Content-Type。

常见错误与故障排除

常见问题

什么是 cURL 转 Fetch 转换器?
它是一款在浏览器内运行的工具,可解析常见的 curl 标志,包括 -X、-H、-d 及其变体、--json、-u、-b、-A、-e、-G 和 --url,然后构建出带有正确方法、请求头和请求体的等价 JavaScript fetch() 调用。
如何将 curl 命令转换为 fetch?
将你的 curl 命令粘贴到输入框中,cURL 转 Fetch 转换器会立即在右侧呈现 fetch() 等价代码,你可以复制它或下载为 request.js。
cURL 转 Fetch 转换器如何决定 HTTP 方法?
如果你传入 -X 或 --request,它会使用该方法;否则在存在数据请求体时默认为 POST,没有时则默认为 GET。
它能处理 -u 的基本认证和 -G 的查询数据吗?
可以。-u 或 --user 的值会被 base64 编码到 Authorization: Basic 请求头中;使用 -G 时,你的 -d 数据会作为查询字符串追加到 URL,而请求体保持为空,就像 curl 一样。
我转换时,curl 命令会被发送到任何地方吗?
不会。curl 转 fetch 的转换完全在你的浏览器中运行,因此命令及其中的任何令牌都在本地处理,绝不会离开你的设备。

相关工具

全部 ArrayKit 工具