.netcore简单集成swagger
为什么要集成Swagger
在前后端分离比较普遍的当下,当后端开发完接口后,还需把接口的信息、参数说明、返回参数等信息编写好提供给调用者。对于对外开放接口需提供说明文档是必不可少的。但是对于内部开发,编写api说明文档非常的繁琐,而且当接口变更或者是有其他人来修改后可能会出现漏更新的情况,导致接口说明文档与实际接口不符的情况发生。
而集成swagger可以实时的展示开放的api以及相关说明(只需要在编码时对代码进行相应的注释即可),而且我们还可以在其上测试提供的api,非常的友好而方便。
需要了解更多的可以访问swagger的官方网站https://swagger.io/。
.netcore简单集成swagger
第一步,创建.netcore WebApi项目,并引入Swashbuckle.AspNetCore

第二步,配置项目生成xml说明文档

第三步、在startup.cs类中注入并启用swagger
1、在 void ConfigureServices(IServiceCollection services) 方法中添加注入swagger,修改后示例代码
// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
//添加SwaggerGen,配置api说明xml文档
services.AddSwaggerGen(p =>
{
p.SwaggerDoc("ordercenterapi",
new OpenApiInfo { Title = "OrderApi", Version = "v1" }
);
string xmlPath = Path.Combine(PlatformServices.Default.Application.ApplicationBasePath, "QinGy.MarketPlatform.OrderCenterApi.xml"); //程序说明xml文档路径
//string xmlPath = Path.Combine(AppContext.BaseDirectory, "QinGy.MarketPlatform.OrderCenterApi.xml"); //程序说明xml文档路径
p.IncludeXmlComments(xmlPath);
});
}
2、在 void Configure(IApplicationBuilder app, IWebHostEnvironment env) 注册swagger
//注册swagger插件
app.UseSwagger(p=>p.RouteTemplate= "{documentName}/swagger.json"); app.UseSwaggerUI(p =>
{
p.SwaggerEndpoint("/ordercenterapi/swagger.json", "orderapi v1"); //注意ordercenterapi是与AddSwaggerGen中指定的名称一致 });
编写业务api后运行项目就可以看到继承swagger后的api页面了。

---------------------
以上就是.netcore集成swagger的简要说明。
.netcore简单集成swagger的更多相关文章
- Spring Boot 集成 Swagger,生成接口文档就这么简单!
之前的文章介绍了<推荐一款接口 API 设计神器!>,今天栈长给大家介绍下如何与优秀的 Spring Boot 框架进行集成,简直不能太简单. 你所需具备的基础 告诉你,Spring Bo ...
- 基于SpringMVC下的Rest服务框架搭建【1、集成Swagger】
基于SpringMVC下的Rest服务框架搭建[1.集成Swagger] 1.需求背景 SpringMVC本身就可以开发出基于rest风格的服务,通过简单的配置,即可快速开发出一个可供客户端调用的re ...
- 如何使用webapi集成swagger
现在B/S开发中,前后端分离无疑已经成为一种新的时尚,但是如何把后端开发的接口更好的提供给前段开发呢?还用接口文档?low了吧.不仅要花时间开发接口,还得花时间写文档,白花花的时间不久浪费了吗.如果接 ...
- Java高并发秒杀系统API之SSM框架集成swagger与AdminLTE
初衷与整理描述 Java高并发秒杀系统API是来源于网上教程的一个Java项目,也是我接触Java的第一个项目.本来是一枚c#码农,公司计划部分业务转java,于是我利用业务时间自学Java才有了本文 ...
- 【从零开始搭建自己的.NET Core Api框架】(一)创建项目并集成swagger:1.1 创建
系列目录 一. 创建项目并集成swagger 1.1 创建 1.2 完善 二. 搭建项目整体架构 三. 集成轻量级ORM框架——SqlSugar 3.1 搭建环境 3.2 实战篇:利用SqlSuga ...
- Maven + SpringMVC项目集成Swagger
Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目标是使客户端和文件系统作为服务器以同样的速度来更新.文件的方法,参数和模型紧密集成到服 ...
- 在spring+springMvc+mabatis框架下集成swagger
我是在ssm框架下集成swagger的,具体的ssm搭建可以看这篇博文: Intellij Idea下搭建基于Spring+SpringMvc+MyBatis的WebApi接口架构 本项目的GitHu ...
- gradle多模块构建集成swagger
1.首先说一下软件的版本:springboot:1.5.2:springcloud:D-SR1:swaager2:2.6.0:gradle:4.5.工程模块是分开的单独的entity,api,mapp ...
- 小白的springboot之路(二)、集成swagger
0-前言 现在的项目开发,基本都是前后端分离,后端专注于API接口开发,都需要编写和维护API接口文档.如果你还在用Word来编写接口文档,那你就out了,这个时候,当当当当~神兵利器swagger隆 ...
随机推荐
- JS寄快递地址智能解析
JS寄快递地址智能解析--2020年7月15日 去年做了些前端内容,最近在整理一些稍微有点用的内容,比如智能解析地址,用户只要输入:张三1351111111江苏省扬州市广陵区XX小区X楼xxx室,就能 ...
- 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现
088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现 本文知识点:Java封装的代码实现 说明:因为时间紧张,本人写博客过程中只 ...
- Windows 无法验证此设备所需的驱动程序的数字签名”的问题
转载: 1.https://jingyan.baidu.com/article/375c8e19c2b25b25f2a229a3.html 2. https://jingyan.baidu.com/a ...
- npm包管理器报错-npm ERR! Response timeout while trying to fetch https://registry.npmjs.org/@XXX(over 30000ms)
由于这两天买的新电脑在短期内频频蓝屏.卡机,不得不把自己其他的本本拿出来换上,但是程序员换电脑是真的痛苦,其他不说就说一个配环境 真的折腾哈 我是一名前端菜鸟,现在自己的本本上使用的是npm包管理工具 ...
- Oracle 存储过程解锁及表解锁和停止执行
查看进程: select * from v$process; 根据存储过程名称查找是否被锁: select * FROM dba_ddl_locks where name =upper('sp_1') ...
- docker-命令帮助
1. 命令参考 http://www.runoob.com/docker/docker-command-manual.html2. docker-命令,可以使用docker --help查看或 ...
- 快速掌握Java8 Stream函数式编程技巧
函数式编程优势 "函数第一位",即函数可以出现在任何地方. 可以把函数作为参数传递给另一个函数,还可以将函数作为返回值. 让代码的逻辑更清晰更优雅. 减少了可变量(Immutabl ...
- 【Luogu】P1613 跑路
[Luogu]P1613 跑路 一.题目 题目描述 小A的工作不仅繁琐,更有苛刻的规定,要求小A每天早上在6:00之前到达公司,否则这个月工资清零.可是小A偏偏又有赖床的坏毛病.于是为了保住自己的工资 ...
- RabbitMQ消息队列总结
AMQP[高级消息队列协议] 是一个异步消息传递所使用的应用层协议规范(是线路层协议)AMQP 客户端能够无视消息的来源任意发送和接受信息 队列的使用场景: 1.与业务的主要逻辑无关,但又需要执行,就 ...
- Helium文档12-WebUI自动化-go_to在当前的Web浏览器窗口中打开指定的URL
前言 go_to在当前的Web浏览器窗口中打开指定的URL 入参介绍 url def go_to(url): """ :param url: URL to open. : ...