欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-06-28 21:23:51
1、新建一个WebApi项目,这里不说了。 2、打开项目nuget管理控制台,在 https://www.nuget.org/ 搜索swagger的包:Swashbuckle.AspNetCore ,如图 3、选择稳定版本并复制安装命令到项目nuget程序包管理控制台中执行,然后等待安装 4、安装完 ......

1、新建一个webapi项目,这里不说了。

2、打开项目nuget管理控制台,在 https://www.nuget.org/ 搜索swagger的包:swashbuckle.aspnetcore ,如图

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

 

3、选择稳定版本并复制安装命令到项目nuget程序包管理控制台中执行,然后等待安装

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

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

 

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