搭建Swagger(NET Core接口可视化)

一、简介:为了更好的管理和测试我们的接口,我这里使用了Swagger框架。Swagger是什么?Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的 Web 服务。

二、安装Get包

Swashbuckle.AspNetCore
------------------------------------------------------------------------------
Swashbuckle.AspNetCore.Filters //使用token认证时添加,接口不需要token认证时不需要添加

三、打开Startup.cs文件,引用命名空间

using System.IO;
using System.Reflection;
using Swashbuckle.AspNetCore.Swagger;
----------------------------------------
//下面引用命名空间,使用token认证时添加,接口不需要token认证时不需要添加

  using Swashbuckle.AspNetCore.Filters;
  using Microsoft.OpenApi.Models;
  using System.Collections.Generic;

四、在ConfigureServices方法里加入下面的代码,注册Swagger生成器,定义一个文档,设置xml文档的注释路径,。

//配置Swagger
//注册Swagger生成器,定义一个Swagger 文档
services.AddSwaggerGen(c =>
{
    c.SwaggerDoc("v1", new Microsoft.OpenApi.Models.OpenApiInfo()
    {
        Version = "v1",
        Title = "接口文档",
        Description = "RESTful API"
    });
//TOken认证时需要注册的认证规则

c.CustomSchemaIds(m => m.FullName);

      var security = new OpenApiSecurityScheme
      {
           Description = "JWT授权,请输入 Bearer {Token} 进行身份验证",
           Name = "Authorization",
           In = ParameterLocation.Header,
           Type = SecuritySchemeType.ApiKey
      };
       c.AddSecurityDefinition("oauth2", security);
       c.AddSecurityRequirement(new OpenApiSecurityRequirement { { security, new List<string>() } });
       c.OperationFilter<AddResponseHeadersFilter>();
       c.OperationFilter<AppendAuthorizeToSummaryOperationFilter>();
       c.OperationFilter<SecurityRequirementsOperationFilter>();



// 为 Swagger 设置xml文档注释路径 var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml"; var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile); c.IncludeXmlComments(xmlPath); });

五、在Configure方法里加入下面的代码,启用中间件服务使用生成Swagger和SwaggerUI,将SwaggerUI中的RoutePrefix设为空字符串,这样就能在根节点(http://localhost:port)直接显示SwaggerUI界面。

//启用中间件服务生成Swagger
app.UseSwagger();
//启用中间件服务生成SwaggerUI,指定Swagger JSON终结点
app.UseSwaggerUI(c =>
{
    c.SwaggerEndpoint("/swagger/v1/swagger.json", "Web App V1");
    c.RoutePrefix = string.Empty;//设置根节点访问
});

六、设置生成的xml文件

1.打开项目属性

2、点开生成页面:配置输出路径和XML文档文件

 

 

3.打开调试页面:启动浏览器配置的路径为空

 

posted @ 2022-03-31 18:35  猴猴手记  阅读(357)  评论(0编辑  收藏  举报
浏览器标题切换
浏览器标题切换end