swagger在VS2019 .net core2.2中的使用,及报错undefined /swagger/v1/swagger.json的解决办法

10 篇文章 1 订阅
1 篇文章 0 订阅

swagger在 .net core中的使用:大佬步骤点击前往

在安装大佬的步骤来配置swagger后来配置,发现一些问题。特此总结下

安装包:Swashbuckle.AspNetCore
在这里插入图片描述

在Startup.cs 配置swagger

在ConfigureServices中添加代码

	//注册Swagger生成器,定义一个和多个Swagger 文档
			services.AddSwaggerGen(c => {
				c.SwaggerDoc("V1", new Info
				{
					Version = "V1",
					Title = "体检系统后台服务",
					Description = "这是一个基于.net core的web API",
					TermsOfService = "None",
					Contact = new Contact
					{
						Name = "姓名",
						Email = "邮箱",
						Url = "http://www.xx.com"
					},
					License = new License
					{
						Name = "许可证名字",
						Url = string.Empty
					}
				}); ;
				// 为 Swagger JSON and UI设置xml文档注释路径
				var basePath = Path.GetDirectoryName(typeof(Program).Assembly.Location);//获取应用程序所在目录
				var xmlPath = Path.Combine(basePath, "MEC.API.xml");
				c.IncludeXmlComments(xmlPath);
			});

在Configure中添加代码

	//启用中间件服务生成swagger 作为JSON的终点
			app.UseSwagger();
			//启用中间件服务对swagger-ui,指定Swagger JSON终结点
            app.UseSwaggerUI(c =>
            {
                c.SwaggerEndpoint("/swagger/V1/swagger.json", "My API V1");
				//加上后,访问地址:https://localhost:44388
				//c.RoutePrefix = "https://localhost:44388/swagger";//访问地址:https://localhost:49382/swagger      
			});

以上代码直接复制添加即可
打开主项目属性——》生成
在这里插入图片描述
1、添加取消警告代码1591;
主要是个人习惯,看着一些无关的警告烦
2、添加xml文档的路径

在地址栏中输入:https://localhost:【prot】/swagger/index.html
在这里插入图片描述
如果觉得每次运行项目输入地址,比较麻烦的话
打开项目——》属性

将启动浏览器设置为swagger/index.html
在这里插入图片描述
再次运行自动打开swagger页面。

补充,在首次安装中如果出现以下错误,
在这里插入图片描述

首先打开运行项目打开地址https://localhost:【port】/swagger/V1/swagger.json
在这里插入图片描述
如能成功打开,请检查下在Startup.cs 的配置文件。
例如:
在这里插入图片描述
在ConfigureServices方法中的配置,这里的V1是大写字母。
在这里插入图片描述

在Configure启动中填写的地址中的v1是小写。所以swagger当然找不到/swagger.json这个文件了。
修改统一的字段,再次运行则可以运行

添加注释说明
在这里插入图片描述
效果
在这里插入图片描述
-----------------错误2------------

重新把项目搭建了次,然后代码直接copy过来。发现报错了。

打不开https://localhost:【port】/swagger/V1/swagger.json这个文件

最后发现在Configure 没配置在这里插入图片描述

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

把以上代码加入到swagger中

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值