VS2017 +NetCore2.2.0+WebApi項目整合SwaggerUI 以及遇到的坑


1、新建一個WebApi項目,這里不說了。

2、打開項目nuget管理控制台,在 https://www.nuget.org/ 搜索swagger的包:Swashbuckle.AspNetCore ,如圖

 

3、選擇穩定版本並復制安裝命令到項目nuget程序包管理控制台中執行,然后等待安裝

 

4、安裝完成后,打開Startup.cs文件,引用命名空間

using Swashbuckle.AspNetCore.Swagger;

在ConfigureServices方法中添加以下代碼

 public void ConfigureServices(IServiceCollection services)
        {
            ...

            services.AddSwaggerGen(options =>
            {
                options.SwaggerDoc("v1", new Info
                {
                    Version = "v1",
                    Title = "MsSystem API",
                    Description = "A simple example ASP.NET Core Web API"
                });
            });
        ... }

在Configure方法中添加代碼

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            app.UseMvc();
            app.UseSwagger();
            app.UseSwaggerUI(c =>
            {
                c.SwaggerEndpoint("/swagger/v1/swagger.json", "MsSystem API V1");
            });
        }

配置完成;

5、發布一遍該webapi項目到IIS上:

這里注意一個坑,坑了我半天,不然不能訪問到swagger.json文件與swaggerui頁面出不來,必須將發布目錄的文件夾權限打開(允許寫入,讀取)

6、在瀏覽器訪問swagger.json文件的位置

如:http://localhost:8687/swagger/v1/swagger.json

7、訪問swaggerui的接口調試頁面

如:http://localhost:8687/swagger/index.html

 

感謝別人的經驗,更多配置可以參考:https://yq.aliyun.com/articles/608901

 


免責聲明!

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



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