要在ASP.NET Core中使用Swagger,首先需要安装Swagger NuGet包。在项目的.csproj文件中,添加以下代码:
然后,在Startup.cs文件中配置Swagger中间件和生成Swagger文档的选项。在ConfigureServices方法中添加以下代码:
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new OpenApiInfo { Title = "API", Version = "v1" });
});
在Configure方法中添加以下代码:
app.UseSwagger();
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "API V1");
c.RoutePrefix = string.Empty; // 将Swagger UI设置为应用程序的根路径
});
上述代码将Swagger UI设置为公共页面,可以通过浏览器访问根路径来查看API文档。
如果你想要添加私有Swagger页面,可以使用SwaggerUIOptions配置,将Swagger UI设置为需要身份验证的页面。在Configure方法中添加以下代码:
app.UseSwagger();
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "API V1");
c.RoutePrefix = "api/docs"; // 设置Swagger UI的路径为“api/docs”
c.DisplayRequestDuration(); // 显示请求持续时间
c.InjectStylesheet("/swagger-ui/custom.css"); // 添加自定义样式
c.IndexStream = () => GetType().Assembly.GetManifestResourceStream("MyNamespace.index.html"); // 添加自定义HTML模板
c.DocumentTitle = "My API Documentation"; // 设置Swagger UI的标题
});
上述代码将Swagger UI设置为需要身份验证的私有页面,并进行了一些自定义配置。
这样,你就可以在ASP.NET Core中使用Swagger,并根据需要设置公共和私有Swagger页面了。