白话 RESTful,OpenApi(OAS),Swagger

网上的半吊子文章太多,大多数都是不说人话,嘴里蹦的都是不知所云的新潮词,看起来高大上,但是看完后对于REST,OpenApi的解释云山雾罩,刨不到根上,毁人不倦。

废话少说,直接上干货。

那么,OpenApi(OAS),Swagger到底是啥?
这些都是web领域开发的工业化和标准化过程,类似于软件开发的lib库的概念。
先看看REST的内容主要有两条:
1) 资源标准化,uri
2) 四大操作方法标准化,GET,POST,PUT,DELETE
这是什么?这不就是软件开发的lib库的概念嘛,网络服务就是lib库, uri就是库的存放路径,四大操作方法就是库函数嘛。
所以说,REST风格其实就是一种软件设计思想。
REST的意思是,你把你的网络服务封装成lib库,uri就相当于访问路径,告诉人家到哪里找你,然后找到你后,你要告诉人家怎么用(四大操作方法)。
所以,对应于lib库开发,lib库 + path + .h
所谓的REST风格或者架构就是:
网络服务 + uri + 四大操作方法。
你的web应用只要提供了上面3个功能,那么你的web应用就是REST风格或者架构,仅此而已。

当然了,REST风格就是一种设计思想,思想只是为你指明了道路和方向,光有思想还不足以开发出有实际用处的任何一行代码。

这就需要后续的底层具体技术跟进。

OpenApi是啥?OpenApi解决的是REST架构“网络服务 + uri + 四大操作方法”中的“四大操作方法”的技术细节问题。又叫接口文档,OpenApi不就是lib库的头文件.h嘛,你只要拿到.h,那么你就知道了怎样使用库对不对?并且只需要把#include ××.h引用到你的代码,你就可以根据接口编程。同样的,你只要开发出了OpenApi文档(.json 或者.yaml),和.h一样,OpenApi文档详细说明了调用四大方法所需要的数据类型、参数和返回值,别人拿到你这个文档,只需要引用一下,就可以在自己的项目中调用你的服务对不对?

当然了,.h是和C这种特定语言绑定的,.h的书写规范就是c语言的语法,而OpenApi是一种通用的接口文档,OpenApi中的描述规范是JSON或者yaml等,就是类似的c语言的语法。但是.h和OpenApi本质作用是一样的:接口文档。
总之,OpenApi就是web开发领域的跨语言的.h。
JSON或者yaml就是web开发领域的跨语言的c语法。

Swagger是啥?就是OpenApi的开发环境IDE。主要是为了解决接口和文档的同步问题,它可以根据我们的接口信息自动生成符合RESTful API接口标准的接口文档,配合Swagger-UI可以方便展示接口信息,并且可以在线直接运行测试用例来进行接口测试,可谓一举多得。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值