zoukankan      html  css  js  c++  java
  • Asp.Net Core WebApi中接入Swagger组件(初级)

    开发WebApi时通常需要为调用我们Api的客户端提供说明文档。Swagger便是为此而存在的,能够提供在线调用、调试的功能和API文档界面。

    环境介绍:Asp.Net Core WebApi + Swagger。

    一、加入Swagger组件

      Swashbuckle.AspNetCore 中分为3个组件。

    PackageDescription
    Swashbuckle.AspNetCore.Swagger Exposes SwaggerDocument objects as a JSON API. It expects an implementation of ISwaggerProvider to be registered which it queries to retrieve Swagger document(s) before returning as serialized JSON
    Swashbuckle.AspNetCore.SwaggerGen Injects an implementation of ISwaggerProvider that can be used by the above component. This particular implementation automatically generates SwaggerDocument(s) from your routes, controllers and models
    Swashbuckle.AspNetCore.SwaggerUI

    Exposes an embedded version of the swagger-ui. You specify the API endpoints where it can obtain Swagger JSON and it uses them to power interactive docs for your API、

      

      安装Swashbuckle.AspNetCore,在Nuget中搜索或是包管理器下输入命令都可,找到这个包,安装,其中有三个小弟是三个不同的组件,在第一个中都集成了。

     二、加入到Asp.Net Core管道中,并注入服务

      加入Swagger中间件

     1     public void Configure(IApplicationBuilder app, IHostingEnvironment env)
     2     {
     3         if (env.IsDevelopment())
     4         {
     5             app.UseDeveloperExceptionPage();
     6         }
     7 
     8         app.UseSwagger();
     9         app.UseSwaggerUI(c =>
    10         {
    11             c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
    12         });
    13 
    14         app.UseMvc();
    15     }

       加入Swagger服务

    1     public void ConfigureServices(IServiceCollection services)
    2     {
    3         services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
    4 
    5         services.AddSwaggerGen(options =>
    6         {
    7             options.SwaggerDoc("v1", new Info { Title = "My WebApi Document", Version = "v1" });
    8         });
    9     }

    三、启动WebApi即可,注意访问路径

    2018-08-18,望技术有成后能回来看见自己的脚步
  • 相关阅读:
    final .....finally ...... 和Finalize ......区别
    MyEclipse中常用的快捷键大全,快来.....
    简单的描述Java中的构造函数,及访问修饰符
    分层开发---酒店管理系统---
    C#深入.NET平台的软件系统分层开发
    影院售票系统-----一个让你有成就感的小项目,只有一丢丢哦
    mysql数据库进阶
    MySQL练习
    MySQL中常见函数
    TCP协议之三次握手四次挥手
  • 原文地址:https://www.cnblogs.com/CKExp/p/9496379.html
Copyright © 2011-2022 走看看