在.Net Core中使用Swagger制作接口文档
在实际开发过程中后台开发人员与前端(移动端)接口的交流会很频繁。所以需要一个简单的接口文档让双方可以快速定位到问题所在。
Swagger可以当接口调试工具也可以作为简单的接口文档使用。
在传统的asp.net开发WebApi的过程中大家对Swagger应该都会很熟悉。
接下来我为大家带来如何在.Net Core中搭建一个Swagger环境。
效果图:
1.首先我们在NuGet中搜索“Swashbuckle.AspNetCore”然后安装。
2.生成XML文档:
在工程文件上右键->属性->左边选择“生成”->勾中“XML documentation file”选项->保存
完成后重新生成项目会在“bin\Debug\netcoreapp1.0”下面发现一个与工程名称一样的xml文件。
3.在“Startup”类中加入下面代码:
using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using System.IO; using Microsoft.Extensions.DependencyInjection; using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.Logging; using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.PlatformAbstractions; using Swashbuckle.AspNetCore.Swagger;namespace online.web {/// <summary>/// /// </summary>public class Startup{/// <summary>/// /// </summary>/// <param name="env"></param>public Startup(IHostingEnvironment env){var builder = new ConfigurationBuilder().SetBasePath(env.ContentRootPath).AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);Configuration = builder.Build();}/// <summary>/// /// </summary>public IConfigurationRoot Configuration { get; }/// <summary>/// 服务/// </summary>/// <param name="services"></param>public void ConfigureServices(IServiceCollection services){services.AddMvc();services.AddSwaggerGen(c =>{c.SwaggerDoc("v1",new Info{Title = "广州树童英语API接口文档",Version = "v1",Description = "限用于开发接口调试.",Contact = new Contact{Name = "魏巍",Email = "68235081@qq.com"}});var filePath = Path.Combine(PlatformServices.Default.Application.ApplicationBasePath, "online.web.xml");c.IncludeXmlComments(filePath);});}/// <summary>/// 中间件/// </summary>/// <param name="app"></param>/// <param name="env"></param>/// <param name="loggerFactory"></param>public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory){loggerFactory.AddConsole();app.UseMiddleware<Middlewares.ExceptionHandlerMiddleware>();app.UseMvc();app.UseSwagger(c =>{c.RouteTemplate = "doc/{documentName}/swagger.json";});app.UseSwaggerUI(c =>{c.RoutePrefix = "doc";c.SwaggerEndpoint("/doc/v1/swagger.json", "API v1");});}} }
有些与Swagger无关的代码可以删掉。
成功以后访问:“http://192.168.3.190:9000/doc/”
这里我为了访问地址方便把swagger与成了doc。大家也可以换成自己习惯的访问地址。
更多使用方法请看Swashbuckle.AspNetCore类库的地址:https://github.com/domaindrivendev/Swashbuckle.AspNetCore
转载于:https://www.cnblogs.com/weiweithe/p/7156496.html
在.Net Core中使用Swagger制作接口文档相关推荐
- oracle web API,在Web API程序中使用Swagger做接口文档
#### 创建Web API程序 在VS2019中创建一个ASP.NET Web应用程序,选择Web API来创建RESTful的HTTP服务项目,构选MVC和Web API核心引用. #### 安装 ...
- 实体类 接口_spring-boot-route(五)整合Swagger生成接口文档
目前,大多数公司都采用了前后端分离的开发模式,为了解决前后端人员的沟通问题,后端人员在开发接口的时候会选择使用swagger2来生成对应的接口文档,swagger2提供了强大的页面调试功能,这样可以有 ...
- 浅析如何在Nancy中使用Swagger生成API文档
原文:浅析如何在Nancy中使用Swagger生成API文档 前言 上一篇博客介绍了使用Nancy框架内部的方法来创建了一个简单到不能再简单的Document.但是还有许许多多的不足. 为了能稍微完善 ...
- [Golang梦工厂]一个小项目带你学会GIN框架、JWT鉴权、swagger生成接口文档,看这一篇就够了
前言 哈喽,大家好,我是asong,这是我的第八篇原创文章.听说你们还不会jwt.swagger,所以我带来一个入门级别的小项目.实现用户登陆.修改密码的操作.使用GIN(后台回复Golang梦工厂: ...
- 关于使用Typora制作接口文档的那些事儿
程序开发过程中,团队协作是常态,有人负责前端,有人负责后端,那么前后端交互时的接口文档,就是一个相当关键的[沟通桥梁],接口文档最常见(仅限于我这种弱智小白的见识范围)的就是markdown文档(.m ...
- springboot 中文文档_还在用 Swagger生成接口文档?我推荐你试试它
JApiDocs是一个无需额外注解.开箱即用的SpringBoot接口文档生成工具. 编写和维护API文档这个事情,对于后端程序员来说,是一件恼人但又不得不做的事情,我们都不喜欢写文档,但除非项目前后 ...
- Swagger生成接口文档
目录 1 简单介绍 2 入门案例 2.1 引入依赖 2.2 编写配置 2.3 启动测试 3 常用注解 4 生成可以生成文档的增强 4.1 添加依赖 4.2 重启项目 5 记录生产环境的坑 6 生成do ...
- 还在用Swagger生成接口文档?我推荐你试试它.....
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 JApiDocs是一个无需额外注解.开箱即用的SpringBoot ...
- Spring MVC中使用Swagger生成API文档和完整项目示例Demo,swagger-server-api(二十)
一:Swagger介绍 Swagger是当前最好用的Restful API文档生成的开源项目,通过swagger-spring项目 实现了与SpingMVC框架的无缝集成功能,方便生成spring r ...
最新文章
- 关于service层、dao层,以及O/R Mapping之间的思考
- Mac 下Eclipse无法连接手机
- 【鬼网络】之部署YUM仓库大全
- Flink CDC 实时同步mysql
- 外星人做系统logo_深圳福田外星人笔记本电脑维修服网点
- struts配置访问后缀为.do,.action,.*
- 廖雪峰Python 2.X 教程
- 新路由3 newifi d2 潘多拉PandoraBox固件,带鸡血驱动
- 举办2021创业者线下沙龙心得与感悟
- gogo learning
- golang简易版聊天室
- windows 控制台提示:请求的操作需要提升
- 行列式的3种计算方法技巧和一点注意
- 大恒相机开发实践(3)——参数设置
- 关于账号的转换的一点经验Hive
- ES安装的详细步骤、ES的集群搭建以及ElasticSearch安装时可能出现的问题
- Promise、Promise.all 和Promise.race用法
- ZCMU 1600: 卡斯丁狗要吃糖葫芦
- windows安装python环境、conda常用命令
- hihoCoder - 1353 满减优惠
热门文章
- Java小项目:图片版坦克大战
- 解决PyCharm调试查看变量时一直显示collecting data并报错Timeout waiting for response且看不到任何内容
- 3Dshader之膨胀与收缩
- 利用深度学习技术自动可靠的叶病检测(附数据+分割分类详细+公共总结)
- JAVA的四则运算规则_java四则运算规则
- 多精度数带余除法_《有余数的除法》教学设计
- 最新(2019)斯坦福CS224n深度学习自然语言处理课程(视频+笔记+2017年合集)
- 吴恩达老师的机器学习和深度学习课程笔记打印版(全)
- typecho运行html插件,typecho主题集成HTML压缩功能
- 计算机科学与技术专业大学排名2020,2020计算机科学与技术专业最好大学排名:160余所大学上榜...