zoukankan      html  css  js  c++  java
  • ASP.NET CORE NSwag的Swagger

    使用NSwag.AspNetCore启用swagger:微软官网介绍的入门方法

    NSwag 提供了下列功能:

    • 能够使用 Swagger UI 和 Swagger 生成器。
    • 灵活的代码生成功能。

    借助 NSwag,无需使用现有 API。也就是说,可使用包含 Swagger 的第三方 API,并生成客户端实现。 使用 NSwag,可以加快开发周期,并轻松适应 API 更改。

       在 Startup.ConfigureServices 方法中,注册所需的 Swagger 服务:

    public void ConfigureServices(IServiceCollection services)
     {
        services.AddSwaggerDocument();
        //swagger
        services.AddControllers();
     }

    在 Startup.Configure 方法中,启用中间件为生成的 Swagger 规范和 Swagger UI 提供服务:

    public void Configure(IApplicationBuilder app)
    {
        app.UseStaticFiles();
    
        // Register the Swagger generator and the Swagger UI middlewares
        app.UseOpenApi();
        app.UseSwaggerUi3();
    
        app.UseMvc();
    }

    启动应用。 转到:

    • http://localhost:<port>/swagger,以查看 Swagger UI。
    • http://localhost:<port>/swagger/v1/swagger.json,以查看 Swagger 规范。

    实现登录认证token的输入

       在 Startup.ConfigureServices 方法中

    public void ConfigureServices(IServiceCollection services)
     {
        //services.AddSwaggerDocument(); 加了JWT授权,这行代码需要去掉
        services.AddOpenApiDocument(settings =>
       {
          settings.AddSecurity("身份认证Token", Enumerable.Empty<string>(), new NSwag.OpenApiSecurityScheme()
         {
          Description = "JWT授权(数据将在请求头中进行传输) 直接在下框中输入Bearer {token}(注意两者之间是一个空格)",
          Name = "Authorization",
          In = NSwag.OpenApiSecurityApiKeyLocation.Header,
          Type = NSwag.OpenApiSecuritySchemeType.ApiKey
        });
       });
        services.AddControllers();
     }

     

  • 相关阅读:
    玩转html2canvas以及常见问题解决
    docker磁盘空间清理办法
    统计行数、文件夹个数、文件个数的相关shell命令
    golang将字符串进行md5加密
    思考如何将自动化测试加入持续集成中
    锋利的NodeJS之NodeJS多线程
    成年人的必修课:抗压和自驱力
    MacOS下PHP7.1升级到PHP7.4.15
    php性能分析利器:xhprof
    后Low Code时代:聚焦和突破
  • 原文地址:https://www.cnblogs.com/smileZeng/p/13593608.html
Copyright © 2011-2022 走看看