Asp.Net 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中間件

 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,望技術有成后能回來看見自己的腳步

 


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com