cURL

cURL 转 Fetch

将 cURL 命令转换为 JavaScript fetch

API 与 HTTP
🔒 100% 本地运行 — 你的数据不会离开当前页面
由 Evan 维护•最近更新:2026年9月30日
选项模式
输入

先粘贴一条 cURL 命令,直接转成可运行的 fetch;结构预览和对照样例可在高级模式查看。

🔒 浏览器内本地处理
输出
JavaScript fetch 代码将显示在这里
页面阅读模式

完整说明还包括常见问题处理、操作示例、代码片段、FAQ 和相关工具,便于核对结果或排查问题。

工具说明

把单行简单 cURL 请求转换为可编辑的 JavaScript fetch 草稿。解析器仅识别部分方法、请求头和字面请求体标志,不复现 Shell 执行、文件读取或完整 cURL 语义。使用前核对请求预览与响应读取代码;工具不执行命令,但会在当前浏览器保存完整输入草稿。

失败门诊(高频踩坑)

把 cURL 草稿当成 Shell 和浏览器行为的完整复现

原因:数据参数按字面读取,Shell 引号和转义被简化;未支持选项可能被忽略,或其参数被误当作 URL。Fetch 还有自己的 CORS、请求头、请求体及响应读取要求。

修复:使用带占位凭据的简单单行命令;执行前检查 URL、方法、头部、请求体与响应读取。完整命令草稿会保存在当前浏览器中。

生产可用片段

运行生成代码前检查字面请求体

text

输入:
curl 'https://example.com' --data-urlencode 'q=hello world'

生成的请求字段:
method: POST
body: q=hello world

此转换器不会把空格编码成 %20 或 +。
模板最后调用 response.json()。

常见问题

识别哪些 cURL 写法?

适合单行简单 curl 命令,识别 URL、-X/--request、-H/--header、-I/--head 和数据参数;未显式指定方法时,有数据参数选 POST,否则 GET。这是简化分词器,不是 Shell 或完整 cURL 解析器。

数据参数与真实 cURL 完全等价吗?

不等价。数据参数按字面字符串读取,并用 & 拼接;--data-urlencode 不会执行 URL 编码,@file 不会读取文件。Shell 变量、命令替换、转义、multipart 上传及未支持标志都不能可靠翻译,需核对生成的请求预览。

生成代码能直接运行吗?

需先检查。模板固定调用 response.json(),空响应或非 JSON 响应要改用合适读取方式;浏览器 CORS、禁止设置的请求头、Cookie 和 Fetch 方法/请求体限制仍然适用。转换器本身不执行命令或请求。

粘贴的令牌会留在哪里?

转换不上传命令,但完整输入会保存在当前浏览器本地存储中并在返回时恢复。建议先把真实凭据换成占位符,尤其是共享浏览器;清空会移除保存的命令。

继续浏览