NSwagSwagger/OpenAPI 工具鏈
NSwag 是一個(gè) Swagger/OpenAPI 2.0 和 3.0 工具鏈,用于.NET、.NET Core、Web API、ASP.NET Core、TypeScript(jQuery、AngularJS、Angular 2+、Aurelia、KnockoutJS 等)和其他平臺(tái),用 C# 編寫。OpenAPI/Swagger 規(guī)范使用 JSON 和 JSON Schema 來描述一個(gè) RESTful web API。NSwag 項(xiàng)目提供了從現(xiàn)有的ASP.NET Web API 控制器生成 OpenAPI 規(guī)范的工具,以及從這些 OpenAPI 規(guī)范生成的客戶端代碼。
該項(xiàng)目將 Swashbuckle(OpenAPI/Swagger generation)和AutoRest(client generation)的功能結(jié)合在一個(gè)工具鏈中(不需要這兩個(gè)庫)。這樣就可以避免很多不兼容的情況,并且可以更好地支持OpenAPI規(guī)范或JSON Schema沒有很好描述的功能(例如繼承、枚舉和引用處理)。NSwag 項(xiàng)目大量使用NJsonSchema for .NET來處理JSON Schema和生成C#/TypeScript類/接口。
特性:
- 從 C# ASP.NET(Core) controllers 生成 Swagger 2.0 和 OpenAPI 3.0 規(guī)范
- 通過 ASP.NET (Core)中間件提供規(guī)范,可選擇使用 Swagger UI或ReDoc
- 從這些規(guī)范中生成C#或TypeScript客戶端/代理。
- 一切都可以通過CLI實(shí)現(xiàn)自動(dòng)化(通過NuGet工具或構(gòu)建目標(biāo)分發(fā);或NPM)。
- CLI通過JSON文件或NSwagStudio Windows UI進(jìn)行配置
評(píng)論
圖片
表情
