Swagger UI教程 API 文档神器 搭配Node使用
一、node.js的安装
运行环境必须使用node.js,把其作为服务器来跑,
安装教程
二、swagger的安装
教程
对上面的图片进行进行讲解,教程博客中大部分都讲清楚了,所以我这里就不说了,在我做的过程中就是这个地方没有看懂,我在这里进行解释一下,它讲的那个url是在public/index.html 文件中,把它替换为后边的就可以了,还有那个text.json名字要用自己的。
三、用法
使用 Swagger Editor 编写API文档,把写好的文档下载下来就可以跑了,若在公司里的话就把这个服务器安装在公有的服务器之上,把写好的接口文档提交上去,这样前后台就可以遵循着这种契约来进行写代码了。
四、Mock server 的使用
契约测试
谈到了前后端分离,那么在所难免,会遇到一些集成的问题:一拨人在全心全意的进行前端开发,另一拨人在心无旁骛的做后端开发,那么谁应该为集成买单呢?在现在这个持续集成、持续交付的年代里,我们应该如何去保证双方不会分道扬镳、越走越远呢?
所以,在一开始就定一个契约就成了迫在眉睫的事情,双方就API相关的内容,包括路径、参数、类型等达成一致,当然,这份契约并不是一旦创建就不能修改的,而且,如果一开始没有设计好,很有可能会频繁的修改。这个时候,要让双方都能够实时的跟踪最新的API就成了一个难题。还好,在总结了前人的经验和教训之后,我们早已有了应对之策,那就是契约测试。
老马(Martin Fowler)早在2011年的时候就发表了一篇博客http://martinfowler.com/bliki/IntegrationContractTest.html,专门讨论了如何做契约测试。
首先,我们先假设我们已经有了一份契约,可能是基于JSON格式的,有可能是基于XML格式的,这都不重要。然后,前端会根据这份契约建立一个Mock server,所有的测试都发往这个Mock server。有两方面的原因:一是这个时候可能后台的API还没有开发完成;二是有可能因为网络等其他方面的原因导致直接调用真实的后台API会很不稳定或者很耗时。到这里,可能有人就要说了,如果后台的API实现和之前约定的并不一样,怎么能保证到了集成的时候双方还能很顺利的集成呢?其实这个问题并不难,只需要让前端的测试定期连接真实的API执行一遍就能尽早的发现差异性。比方说,在我们平常的build pipeline上添加一个job,让这些测试每天在午夜里连着真实的API执行。如果,第二天发现这些测试有的失败了,那么就需要和开发后台API的人员进行一次沟通了,很有可能由于真实的业务逻辑发生了变化,API在实现的时候,已经和之前的契约不一致了,如果是这样,那么相应的测试和契约定义就需要更新以满足最新的业务需求。
总之,进行契约测试的目的就是尽早的发现差异性,并作出调整,将最后集成的风险降到最低。
总结:我写这篇文章的目的是想学习以下几个知识点
1、就是一个前后台的API规范问题,这个我已经学到了,就是大家都常用的 RESTFul (这是一个优秀的个人博客讲解RESTful API 设计指南的)接口格式
2、我想知道如何使用swagger软件写出符合json格式的 RESTful 接口文档,这个我也差不多会了。
3、我想要学习如何使用swagger编写契约测试,这点我没有学会,有会的望指点一下。
RESTful 架构
1、REST(表现层状态转换) 把资源呈现出来的形式叫做它的表现层,状态转换就是让服务器数据发生转换
2、设计一套合理好用的API
Swagger UI教程 API 文档神器 搭配Node使用相关推荐
- Spring Boot 集成 Swagger 生成 RESTful API 文档
原文链接: Spring Boot 集成 Swagger 生成 RESTful API 文档 简介 Swagger 官网是这么描述它的:The Best APIs are Built with Swa ...
- 超详细!使用swagger自动生成Api文档(swagger-ui)
介绍 swagger是什么? swagger-ui 使用swagger-ui 简单使用 swagger api注解 本文参考: 介绍 这里是一些介绍,如果想直接看如何使用,请直接跳过这部分.但如果有时 ...
- swagger php修改成中文,PHP使用swagger自动生成API文档
使用 swagger 自动生成 API 文档 使用 swagger 自动生成 API 文档,有需要的朋友可以参考下. 一.下载 swagger-ui 直接上传服务器 二.下载 swagger-php ...
- springboot 集成 swagger 自动生成API文档
Swagger是一个规范和完整的框架,用于生成.描述.调用和可视化RESTful风格的Web服务.简单来说,Swagger是一个功能强大的接口管理工具,并且提供了多种编程语言的前后端分离解决方案. S ...
- Python 实现 Swagger yaml 格式 api 文档合并
需求来源 公司业务系统中,API文档定义使用了Swagger,由于多人开发中每个人开发的节点不同,整体的业务过于复杂,维护一套完整的 API 文档十分繁重,且容易出现误修改,所以用 python 实现 ...
- 使用swagger实现在线api文档自动生成 在线测试api接口
使用vs nuget包管理工具搜索Swashbuckle 然后安装便可 注释依赖于vs生成的xml注释文件 转载于:https://www.cnblogs.com/ProDoctor/p/752607 ...
- Spring Boot 2.x基础教程:使用Swagger2构建强大的API文档
点击蓝色"程序猿DD"关注我 回复"资源"获取独家整理的学习资料! 作者 | 翟永超 来源 | didispace.com/spring-boot-learni ...
- 浅析如何在Nancy中使用Swagger生成API文档
原文:浅析如何在Nancy中使用Swagger生成API文档 前言 上一篇博客介绍了使用Nancy框架内部的方法来创建了一个简单到不能再简单的Document.但是还有许许多多的不足. 为了能稍微完善 ...
- 爽到爆!阿里腾讯都在用的API管理神器,API文档、测试、Mock全搞定
作为一个后端开发,我做的大部分项目一般都是基于 Swagger 来管理 API 文档,基于 Postman 来做接口调试,基于 JMeter 来做接口性能测试,基于 RAP 等工具 Mock API ...
最新文章
- oracle顺序读等待,Oracle Study之--Oracle等待事件(4)
- 新秀nginx源代码分析数据结构篇(四)红黑树ngx_rbtree_t
- bellmanford队列优化
- Linux里怎么进行路由跟踪,[Linux] traceroute 路由跟踪指令用例
- matlab写字,Matlab实现鼠标写字代码
- 关于H5工程师那些日常必需工具
- 对 PL/SQL开发调试的想法
- Xshell配合Screen之ssh会话永不断开
- 程序设计语言诞生——程序设计语言的发展历史
- java事务传播机制事例,spring事务传播机制
- 任天堂残酷马里奥游戏
- java导出mysql数据表的结构生成word文档
- DSP复习笔记(2)——TMS320F28335芯片内部结构
- 微信支付商户朋友圈广告
- LSTM预测多支股票的收盘价
- linux设置打开终端快捷键
- PHP——get和post请求他人接口
- 华三H3C交换机配置端口聚合之二层端口静态和动态聚合
- 用计算机打印相片怎么调色,我想打印这张照片脸色有些发红,请高手调调色,谢谢了...
- QT 自定义分页控件
热门文章
- idea 启动SpringBoot项目出现java程序包:xxx不存在
- 主成分分析二级指标权重_主成分分析法 - 确定多因素影响权重
- 自动驾驶系统中视觉感知模块的安全测试
- 对接企业微信4:接收消息与事件
- python实现自动发送邮件,同时给多人发送,是工作变的简单(附源码)
- 南信大计算机科学与坫,校园万象 | 南信大开启无处不在“i-NUIST”模式,疑难问题,为你一一解答!...
- operator=函数.
- vlc播放器或者web实现rtmp拉流
- 【diffusion】扩散模型详解!理论+代码
- OSPF如何配置被动接口