要在 ASP.NET Core 中配置 Swagger,您需要遵循以下步骤:
-
添加 Swagger NuGet 包:将
Swashbuckle.AspNetCore
NuGet 包添加到项目中。 -
在
Startup.cs
文件中进行配置:csharpusing Microsoft.OpenApi.Models; public class Startup { // 省略其他代码... public void ConfigureServices(IServiceCollection services) { // 添加 Swagger 服务 services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new OpenApiInfo { Title = "Your API", Version = "v1" }); }); // 添加其他服务配置... } public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { // 省略其他代码... // 注册 Swagger 中间件 app.UseSwagger(); // 配置 Swagger UI app.UseSwaggerUI(c => { c.SwaggerEndpoint("/swagger/v1/swagger.json", "Your API V1"); // c.RoutePrefix = ""; // 设置为根路径 省略/swagger }); // 省略其他代码... } }
在上述代码中,我们通过调用
services.AddSwaggerGen
方法来配置 Swagger。您可以使用这个方法来设置 API 的标题、版本、描述等信息。然后,我们在
Configure
方法中使用了app.UseSwagger()
注册 Swagger 中间件。最后,我们使用app.UseSwaggerUI
方法配置 Swagger UI。在上述代码中,Swagger UI 将在
/swagger
路径下可用。要访问 Swagger UI,请启动应用程序,并在浏览器中打开http://localhost:<port>/swagger
,其中<port>
是您应用程序运行时的端口号。 -
在需要使用 Swagger 的控制器或方法上添加 Swagger 注释。
csharpusing Microsoft.AspNetCore.Mvc; [ApiController] [Route("api/[controller]")] public class YourController : ControllerBase { /// <summary> /// 获取所有项目 /// </summary> [HttpGet] public IActionResult GetAll() { // Your code here... } }
在上述代码中,我们在
GetAll
方法上添加了一个简单的 Swagger 注释。您可以使用不同的标记和注释来配置 Swagger 文档的其他元素,例如路由参数、请求体、响应等。请参考 Swagger 文档以获取更多详细信息。
配置完毕后,您就可以使用 Swagger 来浏览和测试 API 了。Swagger 提供了一个交互式界面,可以通过调用不同的 API 方法来查看请求和响应的详细信息。
更为完整的配置,请参考官方文档:https://learn.microsoft.com/zh-cn/aspnet/core/tutorials/getting-started-with-swashbuckle?view=aspnetcore-7.0&tabs=visual-studio