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中

GitHub 加速计划 / js / json
41.72 K
6.61 K
下载
适用于现代 C++ 的 JSON。
最近提交(Master分支:1 个月前 )
960b763e 2 个月前
8c391e04 5 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐