📖 工具说明
在 Node.js 开发中,手动将浏览器抓取的 cURL 转换为复杂的请求逻辑(尤其是涉及文件上传或复杂 Cookie 时)非常耗时。本工具支持一键将 cURL 命令 转换为符合 Node.js 生态的主流异步请求代码。
1. 核心应用场景
- 后端 API 调用: 在开发微服务或中间件时,快速将测试好的 cURL 命令转化为生产环境的 Node.js 代码。
- 爬虫与数据采集: 模拟复杂的浏览器请求,自动处理
User-Agent、Referer 及 Cookie 字典,减少封禁风险。
- 自动化测试脚本: 快速为集成测试编写请求逻辑,支持处理复杂的
multipart/form-data。
- 旧脚本重构: 将 Shell 脚本中的 cURL 逻辑快速迁移至 Node.js 环境,实现逻辑上云或平台化。
2. 核心功能解析
本站工具深度适配了 Node.js 异步非阻塞的特性及主流网络库:
A. 支持多种主流方案 (Multiple Libraries)
- Axios (推荐): 生成基于 Promise 的简洁代码,支持拦截器风格,是目前 Node.js 社区最流行的选择。
- Got: 生成更符合 Node.js 哲学的轻量级请求代码,支持强大的重试机制。
- Request (Legacy): 虽已停止维护,但仍为维护旧项目提供代码转换支持。
- Native (http/https): 生成无任何外部依赖的原生 Node.js 代码,适合极致轻量化的环境。
B. 智能参数映射
- Body 负载处理: 自动识别
--data-raw, --data-binary 等,生成对应的 JSON.stringify 或 Buffer 处理逻辑。
- Cookie 管理: 自动将 cURL 中的 Cookie 字符串解析为结构化字典,方便代码动态维护。
- 流式上传: 针对大文件上传指令,自动生成对应的文件流处理模板。
C. 100% 本地转换 (Privacy Priority)
- 物理级隐私保护: 所有的代码转换逻辑均在您的浏览器本地执行。您的 API 接口地址、私密 Token、甚至 Cookie 数据绝不上传服务器,确保开发环境的绝对安全。
D. 代码规范与美化
- 生成的代码默认采用
async/await 语法,符合现代 Node.js 最佳实践。
- 自动进行代码缩进与语法高亮,确保生成的片段可以直接粘贴到 VS Code 中。
3. 操作流程简述
- 获取指令: 在 Chrome 或 Edge 开发者工具中,右键点击请求选择 Copy -> Copy as cURL (bash)。
- 粘贴代码: 将内容粘贴至本站的“输入框”。
- 选择框架: 根据您的项目选型点击 Axios, Got 或 Native 标签。
- 一键复制代码: 结果会即时生成,点击“复制代码”即可完成。
4. 转换代码示例
原始 cURL:
curl 'https://api.ebtool.com/upload' -H 'X-API-KEY: secret' -d '{"file_id": 1024}'
生成的 Node.js 代码 (以 Axios 为例):
const axios = require('axios');
async function makeRequest() {
try {
const response = await axios({
method: 'post',
url: 'https://api.ebtool.com/upload',
headers: {
'X-API-KEY': 'secret',
'Content-Type': 'application/json'
},
data: {
'file_id': 1024
}
});
console.log(response.data);
} catch (error) {
console.error(error.message);
}
}
5. 为什么选择本站在线 cURL 转 Node.js?
- 秒级响应: 纯 JS 前端解析,无需网络往返,比同类在线工具快 5-10 倍。
- 多版本兼容: 支持 CommonJS (
require) 和 ESM (import) 两种导出风格预览。
- 纯净工具属性: 无需登录、无广告、无订阅,专为工程师效率而生。
- 错误纠偏: 如果 cURL 命令格式有误,工具会尝试智能修复或给出语法提示。