OpenAPI 解析器

原生 Delphi 类,读取 OpenAPI 3.0、3.1 和 3.2 规范,Swagger 2.0 文档在读入时完成转换,让您以编程方式访问每个端点、模式和安全定义。

TsgcOpenAPI

没有可以拖放到表单上的东西。sgcOpenAPI 不注册任何组件,也不提供设计期包,因此请在代码中创建 sgcOpenAPI_Classes.pas 里的 TsgcOpenAPI,并把任意规范读入其中。

加载规范

ReadFromFile 接受路径,Read 接受字符串形式的文档,URL 则由命令行工具先行下载。JSON 与 YAML 都在本地读取,Swagger 2.0 文档同样在本地转换为 OpenAPI 3.0。

浏览 API 模型

Paths、Webhooks、Components、Security、Servers、Tags 和 Info 都是对象上的属性,因此路径、操作、参数、请求/响应体、模式和安全方案都可以通过强类型模型访问。

生成代码

TsgcOpenAPI_Parser_Client_Pascal 继承自同一个类,也就是说生成器就是读取器加上一个输出器。从它派生即可生成 Pascal 单元,也可以自己遍历模型,用于自定义工具和自动化。

解析器详情

引用解析

$ref 不会被内联,而是以 _Ref 保留在对象上,所以模型并不会替你解引用。外部文件引用和 URL 引用由 TsgcOpenAPI_Bundle 事先取回并内联,它会记住已访问过的内容,并在达到最大深度时停止。

模式组合

AllOf、OneOf 和 AnyOf 会连同 Discriminator 及其映射一起读入模式对象,代码生成器再把它们展平为 Pascal 类。

规范验证

Warnings 会收集读取器无法处理的一切,从缺失的 info 对象到生成器忽略的关键字,并在每次读取时清空。行号和列号只对无法解析的 YAML 文档给出。

超值之选:All-AccesseSeGeCe 全部产品,含高级支持,每年 €1,059 起。
查看 All-Access 价格

试用解析器

下载免费试用版,几分钟内解析您的第一个 OpenAPI 规范。