AspNet Core WebApi中接入Swagger组件(初级)
目录
开发WebApi时通常需要为调用我们Api的客户端提供说明文档。Swagger便是为此而存在的,能够提供在线调用、调试的功能和API文档界面。
环境介绍:Asp.Net Core WebApi + Swagger。
加入Swagger组件
Swashbuckle.AspNetCore 中分为3个组件。
| Package | Description | 
|---|---|
| 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中间件
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
    if (env.IsDevelopment())
    {
        app.UseDeveloperExceptionPage();
    }
    app.UseSwagger();
    app.UseSwaggerUI(c =>
    {
        c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
    });
    app.UseMvc();
}
加入Swagger服务
public void ConfigureServices(IServiceCollection services)
{
    services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
    services.AddSwaggerGen(options =>
    {
        options.SwaggerDoc("v1", new Info { Title = "My WebApi Document", Version = "v1" });
    });
}
启动WebApi即可,注意访问路径
 
 
2018-08-18,望技术有成后能回来看见自己的脚步。