asp.net core 集成swagger ui的原理解析(3)

app.UseSwaggerUI((options) => { //options.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1"); //options.SwaggerEndpoint("/BlogApis/v1/swagger.json", "BlogApis"); //定义用户管理相关API的OpenApi Json 信息请求路径。 options.SwaggerEndpoint("/BlogApis/User/swagger.json", "UserManagerApis"); //定义文章管理相关API的OpenApi Json 信息请求路径。 options.SwaggerEndpoint("/BlogApis/User/swagger.json", "PostManagerApis"); //这里我们告诉SwaggerUI 请求拦截中间件,当收到浏览器发送过来的/BlogApisDocs 的请求则返回SwaggerUI 页面。 options.RoutePrefix = "BlogApisDocs"; });

如何将API 方法注释、参数注释自动通过SwaggerUI展示?

打开Startup.cs 找到 ConfigureServices方法增加如下代码:

services.AddSwaggerGen(options => { //这里我们将用户相关的API分成一组。 options.SwaggerDoc("User", new Microsoft.OpenApi.Models.OpenApiInfo() { Title = "用户管理", Version = "1.0" }); //这里我们将文章管理相关的API分成一组。 options.SwaggerDoc("Post", new Microsoft.OpenApi.Models.OpenApiInfo() { Title = "文章管理", Version = "1.0" }); //以下是设置SwaggerUI中所有Web Api 的参数注释、返回值等信息从哪里获取。 //这里表示从站点根目录下的指定XML配置文件中去读取API的注释信息。 var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml"; var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile); options.IncludeXmlComments(xmlPath); });

然后需要设置WebApi 项目在生成项目时自动生成描述API信息的XML文件,并需要将生成的XML配置文件SwaggerDemo.xml 设置为始终复制到输出目录:

asp.net core 集成swagger ui的原理解析

好了,基本用法就讲到这里了,本文主要讲解了如何对API进行分组,这里仅仅是举了一个按照API功能进行分组的例子,其实在实际开发中,要按照何种方式分组,可以按照需求灵活定义,比如按照API版本进行分组。

如果您在阅读本文的过程中有任何疑问,欢迎给我的个人博客: 留言,看到会及时回复!

到此这篇关于asp.net core 集成swagger ui的文章就介绍到这了,更多相关asp.net core 集成swagger ui内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwwpgg.html