ASP.NET Core支持使用Swagger(OpenAPI)规范生成API定义文件,并且可以使用NuGet软件包“Swashbuckle.AspNetCore”将其轻松集成到应用程序中。从API定义文件生成代码的方法如下:
Install-Package Swashbuckle.AspNetCore
在Startup.cs文件中添加以下代码:
services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" }); });
app.UseSwagger(); app.UseSwaggerUI(c => { c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1"); });
[ProducesResponseType(typeof(Product), 200)] public IActionResult Get(int id) { var product = _repository.Get(id); if (product == null) { return NotFound(); } return Ok(product); }
运行应用程序并访问/swagger/v1/swagger.json,此URL将返回API定义文件。
可以将API定义文件导入到许多工具中,例如Postman、代码生成器等,以从中生成代码。
在通过Swagger生成的API定义文件中,定义了API的请求和响应模式、参数和返回类型等信息,开发人员可以使用它们来生成客户端代码以进行调用。