.Net Core---- WebApi生成Swagger接口文檔


1. Swagger是什么?

    Swagger 是一個規范和完整的框架,用於生成、描述、調用和可視化 RESTful 風格的 Web 服務。總體目標是使客戶端和文件系統作為服務器以同樣的速度來更新。文件的方法,參數和模型緊密集成到服務器端的代碼,允許API來始終保持同步。Swagger 讓部署管理和使用功能強大的API從未如此簡單。

 

2.Swagger可以干什么?

a.接口,服務可視化,非常清晰,好用

b.做接口測試,方便測試人員使用

Github:https://github.com/wuyabusi/swagger.git

第一步:創建WebApi工程

第二步:引入swagger的包

第三步:打開解決方案屬性-->生成,勾選XML文檔文件,保存

第四步:在Startup.cs的ConfigureServices中添加配置

   public void ConfigureServices(IServiceCollection services)
        {
            //配置跨域處理
            services.AddCors(options =>
            {
                options.AddPolicy("any", builder =>
                {
                    builder.AllowAnyOrigin() //允許任何來源的主機訪問
                    .AllowAnyMethod()
                    .AllowAnyHeader()
                    .AllowCredentials();//指定處理cookie
                });
            });
            //配置Swagger
            services.AddSwaggerGen(c =>
            {
                c.SwaggerDoc("v1", new Info
                {
                    Version = "v1",
                    Title = "接口文檔",
                    Description = "RESTful API for TwBusManagement"
                });
                var basePath = PlatformServices.Default.Application.ApplicationBasePath;
                var xmlPath = Path.Combine(basePath, "TextApi.xml");//和上面圖片中xml地址相同
                c.IncludeXmlComments(xmlPath);
                //
            });

            services.AddMvc();
        }

第五步.在Configure中添加配置

 public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            app.UseStaticFiles(); //靜態文件服務
            app.UseSwagger();
            app.UseSwaggerUI(c =>
            {
                c.SwaggerEndpoint("/swagger/v1/swagger.json", "TwBusManagement API V1");
                //c.ShowExtensions();
            });
            app.UseMvc();
        }

第六步.在Properties下的launchSettings.json的文件中修改初始頁面

然后運行就可以

如有問題,歡迎指正

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM