• WebAPI项目中使用Swagger


    最近开始用一个工具Swagger,可以自动生成接口文档并测试接口,简直太好用了,可以告别PostMan,并且也不用写接口文档了,强烈推荐!!!

    首先声明一下,这个是针对WebApi的,继承Controller是控制器是不支持的哦。

    1、在NuGet里面搜索Swashbuckle.AspNetCore包进行安装

     2、在Startup类添加相关内容

     ConfigureServices方法里面注入服务,全局添加了Authorize

     1             services.AddSwaggerGen(c =>
     2             {
     3                 // Bearer 的scheme定义
     4                 var securityScheme = new OpenApiSecurityScheme()
     5                 {
     6                     Description = "JWT Authorization header using the Bearer scheme. Example: "Authorization: Bearer {token}"",
     7                     Name = "Authorization",
     8                     //参数添加在头部
     9                     In = ParameterLocation.Header,
    10                     //使用Authorize头部
    11                     Type = SecuritySchemeType.Http,
    12                     //内容为以 bearer开头
    13                     Scheme = "bearer",
    14                     BearerFormat = "JWT"
    15                 };
    16 
    17                 //把所有方法配置为增加bearer头部信息
    18                 var securityRequirement = new OpenApiSecurityRequirement
    19                 {
    20                     {
    21                             new OpenApiSecurityScheme
    22                             {
    23                                 Reference = new OpenApiReference
    24                                 {
    25                                     Type = ReferenceType.SecurityScheme,
    26                                     Id = "bearerAuth"
    27                                 }
    28                             },
    29                             new string[] {}
    30                     }
    31                 };
    32 
    33                 //注册到swagger中
    34                 c.AddSecurityDefinition("bearerAuth", securityScheme);
    35                 c.AddSecurityRequirement(securityRequirement);
    36                 var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
    37                 var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile);
    38                 c.IncludeXmlComments(xmlPath);
    39             });

    在Configure方法里面添加中间件

    1             app.UseSwagger();
    2             app.UseSwaggerUI(c =>
    3             {
    4                 c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
    5                 c.RoutePrefix = string.Empty;
    6             });

    3、设置:选择项目点击右键-》属性=》生成=》勾选输出下面的XML文档文件的对勾

     4、接口需要按照规范写注释,最终结果如下:

  • 相关阅读:
    spring
    SpringMVC 配置与使用
    基本MVC2模式创建新闻网站
    EL表达式
    JavaBeans介绍
    JSP简介
    Cookie与Session的异同
    过滤器的使用
    session的使用
    最长回文子串
  • 原文地址:https://www.cnblogs.com/zhangjd/p/14750995.html
Copyright © 2020-2023  润新知