无需登录 数据私有 本地保存

cURL 命令转 Fetch 代码 - 自动解析与生成

13
0
0
0
✅ 已复制到剪贴板

cURL 转 Fetch 代码生成器

粘贴 cURL 命令,自动解析并生成现代 JavaScript Fetch 代码,支持 async/await 与 .then() 风格

📥 GET 请求 📤 POST JSON 🔐 Bearer 认证 📝 表单提交 ⚡ 复杂请求
cURL 命令
等待输入...
Fetch 代码
// 等待输入 cURL 命令...

常见问题与知识点

cURL 和 Fetch 的主要区别是什么?

cURL 是一个命令行工具和库,用于在终端中发起网络请求,广泛用于调试、自动化脚本和服务器环境。Fetch API 是浏览器内置的 JavaScript 接口,用于在 Web 应用中发起 HTTP 请求。

关键差异:cURL 支持更多协议(FTP、SMTP 等),而 Fetch 仅支持 HTTP/HTTPS;Fetch 遵循浏览器安全策略(如 CORS),而 cURL 不受此限制;Fetch 默认不发送 Cookie,需手动设置 credentials 选项。

为什么需要将 cURL 命令转换为 Fetch 代码?

在 Web 开发中,开发者经常从浏览器 DevTools、API 文档或后端同事处获得 cURL 命令。将其转换为 Fetch 代码可以快速集成到前端项目中,避免手动重写请求逻辑,减少出错概率,提升开发效率。

Content-Type 头部在转换时需要注意什么?

如果请求体是 JSON 格式,必须设置 Content-Type: application/json。对于表单数据,使用 application/x-www-form-urlencodedmultipart/form-data。本工具会智能检测请求体格式并自动添加合适的 Content-Type 头部。如果 cURL 命令中已经指定了 Content-Type,则优先保留原值。

cURL 中的 -u (Basic Auth) 如何转换为 Fetch?

cURL 的 -u username:password 参数会被转换为 Fetch 中的 Authorization: Basic <base64> 请求头。本工具会自动进行 Base64 编码。例如:-u admin:123456'Authorization': 'Basic ' + btoa('admin:123456')

Cookie 在 Fetch 中如何处理?

Fetch 默认不发送同源 Cookie。如果 cURL 命令中包含 -b--cookie 参数,本工具会自动在生成的 Fetch 代码中添加 credentials: 'include',确保 Cookie 被正确发送。对于跨域请求,还需要服务器配合设置正确的 CORS 头部。

转换后的代码可以直接在浏览器中运行吗?

大多数情况下可以,但需注意以下几点:CORS 限制——浏览器会强制执行同源策略,如果 API 服务器未配置合适的 CORS 头部,请求会被阻止;变量替换——cURL 命令中的 shell 变量(如 $TOKEN)需要手动替换为实际的 JavaScript 变量或值;敏感信息——不要在客户端代码中硬编码 API 密钥或密码,应使用环境变量或后端代理。

-k 或 --insecure 参数在 Fetch 中如何处理?

cURL 的 -k 参数用于跳过 SSL 证书验证。在浏览器环境中,无法直接禁用 SSL 验证——这是浏览器的安全机制。如果遇到证书问题,需要服务端修复证书配置,或通过后端代理转发请求。本工具在解析时会忽略此参数并添加注释提醒。