CURL转SwaggerJSON

在线CURL转Swagger JSON工具,粘贴CURL命令即可一键生成标准OpenAPI 3.0规范。自动识别HTTP方法、URL路径与参数、Header、请求体、Basic/Bearer鉴权,生成含schema、example、servers与security配置的完整Swagger JSON,适用于API文档编写、团队分享与Swagger UI预览。

转换次数
0
成功次数
0
失败次数
0
接口方法
转换配置
CURL 命令
Swagger JSON (OpenAPI 3.0)
转换后的 OpenAPI 3.0 JSON 将显示在此处...
方法: 路径: BaseURL: 输入 CURL 命令后点击「转换为Swagger JSON」或按 Ctrl+Enter

功能特性

智能CURL解析

支持完整CURL语法:-X/--request、-H/--header、-d/--data、--data-raw、--data-binary、--data-urlencode、-F、-u、--oauth2-bearer、-A、-e 等参数。

标准OpenAPI 3.0

生成符合OpenAPI 3.0规范的Swagger JSON,含info、servers、paths、components、security,可直接导入Swagger UI、Apifox、Postman等工具。

完整Schema与示例

自动解析请求体类型(JSON、表单、multipart),生成 properties/required schema 与完整 example,字段类型覆盖 string/integer/number/boolean/object/array。

鉴权自动识别

识别 -u Basic 用户名密码与 --oauth2-bearer/Authorization: Bearer 自动生成 securitySchemes(bearerAuth/basicAuth)并配置 security。

路径与Query参数

自动解析URL中的 path 模板占位符(如 /users/{id})与 QueryString,生成 parameters 数组,区分 in=path/query。

灵活元信息配置

支持自定义接口名称、接口描述、基础URL,生成的规范直接可用作正式文档,无需二次整理。

使用说明

如何使用CURL转Swagger JSON工具?

  • 在「转换配置」中填写接口名称、接口描述(可选)与基础URL(默认从CURL命令中提取,也可手动覆盖)。
  • 「CURL命令」文本框中粘贴完整的 curl 命令,支持以反斜杠换行的多行格式。若不清楚格式,点击顶部三个示例按钮快速填充。
  • 点击「转换为Swagger JSON」按钮或直接按 Ctrl+Enter 快捷键即可生成 OpenAPI 3.0 JSON。
  • 结果区显示生成的规范(带语法高亮),顶部可查看解析到的方法、路径、BaseURL。
  • 点击「复制」一键复制到剪贴板,或点击「下载JSON」保存为 swagger-specification.json

典型CURL命令格式

本工具支持主流 curl 参数写法,以下是常用示例:

GET 请求带 Query 参数

curl -X GET "https://api.example.com/v1/users?page=1&size=20" \
  -H "Authorization: Bearer xxx" \
  -H "Accept: application/json"

POST 请求发送 JSON 数据

curl -X POST "https://api.example.com/v1/users" \
  -H "Content-Type: application/json" \
  -d '{"name":"张三","age":28,"email":"zhangsan@example.com"}'

Basic 认证 + 表单上传

curl -X PUT "https://api.example.com/v1/users/1001" \
  -u admin:secret123 \
  -d "name=李四&role=editor"

典型使用场景

  • 快速编写API文档:先在Postman/Browser里跑通接口,复制浏览器的"Copy as cURL",一键生成标准Swagger规范。
  • 接口评审分享:把CURL命令转为规范后粘贴到需求文档或Swagger UI中,让团队成员直观阅读接口结构。
  • 遗留接口标准化:历史项目接口缺少OpenAPI规范,抓取调用命令快速补齐文档。
  • Swagger UI 预览:生成的JSON直接粘贴到SwaggerJSON渲染工具,在线查看可交互文档。
  • Postman/Apifox 导入:规范JSON可直接导入Postman、Apifox、YApi等平台,创建完整集合。

常见问题

支持哪些CURL参数?支持多行格式吗?
支持主流CURL参数:方法 -X / --request;请求头 -H / --header;数据 -d / --data / --data-raw / --data-binary / --data-urlencode;文件/表单 -F;鉴权 -u / --user / --oauth2-bearer;其它 -A (User-Agent)、-e (Referer) 等。多行格式完全支持——命令行中用 \ 换行、或粘贴多行脚本都会自动合并成一行再解析。
转换失败提示"命令必须以curl开头"或"无法提取URL"?
请确保:1)命令 以 curl 开头(PowerShell 的 Invoke-RestMethod / Invoke-WebRequest 格式暂不支持);2)URL 明确包含 http://https:// 协议头;3)若 URL 含空格或特殊字符,请用双引号或单引号包裹;4)如果使用 @文件名 读取本地数据,由于本工具为在线服务无法读取本机文件,请将文件中的内容直接展开到 -d 参数中。
生成的JSON中Content-Type识别不对怎么办?
Content-Type 识别优先级:1)优先读取 -H "Content-Type: ..." 请求头;2)无 Header 时按数据形态推断——以 {[ 开头视为 application/json-F 文件上传视为 multipart/form-datakey=value&... 格式视为 application/x-www-form-urlencoded。若推断错误,请在CURL命令中显式添加 -H "Content-Type: 正确类型" 后再转换。
如何让生成的Swagger JSON包含多个接口?
本工具一次转换生成一个接口的规范(一个路径 + 一个方法),这与"一条CURL命令对应一次请求"的语义一致。若需要聚合为多接口文档,推荐方案:1)多次转换后手动合并 paths 对象;2)先转成单个规范导入Apifox/Postman,再导出完整OpenAPI文档;3)将多条命令分别转JSON后,使用合并工具拼接 pathscomponents 区块。
Basic/Bearer鉴权会泄露凭证吗?
转换仅在后端内存中解析一次,不会持久化或上传到第三方。生成的Swagger JSON中会记录完整的 securitySchemes,并在 components 中声明 Bearer/Basic 方案;若你的命令中包含真实 Token,建议在转换前将 Token 替换为占位字符串(如 YOUR_TOKEN),避免凭证落入规范文件。鉴权Header的值不会自动脱敏,请自行处理。
本工具是免费的吗?能商用吗?
完全免费,无需注册登录。生成的 Swagger/OpenAPI JSON 规范归属用户所有,可自由使用、发布与商用。工具本身仅负责解析与规范生成,不附加任何版权协议与署名要求。涉及高度敏感的接口与凭证,建议先脱敏后再转换使用。