.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隆 ...
随机推荐
- 神奇的字符串匹配:扩展KMP算法
引言 一个算是冷门的算法(在竞赛上),不过其算法思想值得深究. 前置知识 kmp的算法思想,具体可以参考 → Click here trie树(字典树). 正文 问题定义:给定两个字符串 S 和 T( ...
- nginx完美支持thinkphp3.2.2(需配置URL_MODE=>3 rewrite兼容模式)
来源:http://www.thinkphp.cn/topic/26637.html 环境:nginx 1.6,thinkphp3.2.2 第一步,修改server块 server { listen ...
- Python+Appium自动化测试(11)-location与size获取元素坐标
appium做app自动化测试过程中,有时需要获取控件元素的坐标进行滑动操作.appium中提供了location方法获取控件元素左上角的坐标,再通过size方法获取控件元素的宽高,就可以得到控件元素 ...
- lua 1.1 源码阅读总结
GC 1. 怎么回收的lua 中所有已经分配的数据都会用一些指令的数据结构来记录,当需要回收时,先遍历当前栈内所有 object,把 ref 标志位打上 1,遍历符号表(这部分不能回收),反符号表中的 ...
- MeteoInfoLab脚本示例:FY-2C 云分类HDF数据
脚本程序: #Add data file fn = 'D:/Temp/hdf/FY2C_CLC_MLT_NOM_20070730_1800.hdf' f = addfile(fn) #Get data ...
- .net c#后台请求接口
我们在请求接口的时候,有时因为跨域的问题,总是请求接口失败,亦或是请求接口时,页面还存在跳转的问题,这个时候,我们通过前台ajax请求自己的一般处理程序,用一般处理程序请求客户提供的接口 //获取to ...
- windows.h头文件中改变光标位置的函数——SetConsoleCursorPosition
COORD 具体为 typedef struct COORD{ short X; short Y; } COORD,*PCOORD; 可以用来记录坐标. #include <iostre ...
- BASH让标准输出和错误输出颜色不同
shell中运行的程序输出有标准输出(stdout)和错误输出(stderr)两种.当在终端中运行一个进程时,默认是stdout和stderr混在一起的,需要区分只能去读内容,人眼不容易快速区分. 如 ...
- composer使用git作为仓储
composer.json "repositories": [ { "type":"git", "url":" ...
- Vue3 来了,Vue3 开源商城项目重构计划正式启动!
我打算用 Vue3 写一个商城项目,目前已经开始着手开发,测试完成后正式开源到 GitHub,让大家也可以用现成的 Vue3 大型商城项目源码来练练手. Vue 3.0 来了,我们该做些什么? Vue ...