API 接口主流协议有哪些?如何创建 HTTP/HTTP、WebSocket/WebSockets、TCP/UDP、gRPC、SOAP、Dubbo/HSF 等不同协议?
API 接口协议繁多,不同的协议有着不同的使用场景。70% 互联网应用开发者日常仅会接触到最通用的 HTTP 协议,相信大家希望了解更多其他协议的信息。我们今天会给大家介绍各种 API 接口主流协议和他们之间的关系。
1、API 接口主流协议有哪些?
接口协议分成两类: 传输层协议和应用层协议。
传输层协议, 是为应用层协议提供端到端的通信服务,负责数据的分段、传输、重组、流量控制、差错控制等功能。
其中,传输层协议主要有两种:TCP 和 UDP。
TCP,是一种面向连接的、可靠的、有序的、基于字节流的协议。
UDP,是一种无连接的、不可靠的、无序的、基于数据报的协议。
应用层协议,是为不同的应用场景定义了具体的数据格式、交互逻辑、功能实现等细节。
应用层协议有很多种:

另外,传输层协议和应用层协议在唯一标识上有明显的区别:
传输层协议使用端口号来标识不同的应用层协议,端口号是一个 16 位的整数,范围从 0 到 65535。
应用层协议使用 URI(统一资源标识符)来标识不同的资源,URI 是一个字符串,由协议名、主机名、路径名等组成。
2、API 接口主流协议之间的关系?
传输层协议和应用层协议之间有一个多对多的关系,即一个传输层协议可以支持多个应用层协议,也可以有多个传输层协议支持同一个应用层协议。例如,HTTP 可以使用 TCP 或 UDP 作为传输层协议,而 TCP 也可以支持 FTP、SMTP 等其他应用层协议。
而对于应用层协议 RPC,不同的互联网巨头会基于其使用的技术框架更进一步的提出标准更具体的衍生协议。

3、当前 API 接口管理产品对协议的支持对比
我们通常会根据不同的使用场景选用不同的接口协议。经常会有出现同一个业务流程需要调用不同协议的接口进行流程测试,特别是 HTTP 协议和其他协议的搭配。
这时候就需要考验我们所使用的 API 接口管理工具对接口协议支持的覆盖度,以下列举了部分 API 接口管理工具对协议的支持能力,供大家进行参考对比。

4、如何在 Apikit 中创建不同的协议
从上表可见,当前 Eolink Apikit 是市场上对多接口协议支持覆盖度最全的 API 管理工具,使用 Eolink Apikit 可减少频繁切换接口测试工具的风险。那么具体这些协议如何在 Eolink Apikit 中进行创建呢?下面我们将分别讲解。
4.1 HTTP/HTTPS/WebSocket/WebSockets
- 在 API 管理应用下的 API 菜单中,点击【+API】按钮;
- 在新建 API 页面中,选择所需的 HTTP、HTTPS、WS、或 WSS 协议即可。

4.2 TCP/UDP
- 在 API 管理应用下的 API 菜单中,点击【+API】按钮;
- 在新建 API 页面中,选择所需的 TCP 或 UDP 协议即可。

4.3 gRPC
- 在 API 管理应用下的 API 菜单中,点击【+API】旁的下拉菜单按钮
- 选择导入 API

- 选中 PROTO 文件类型
- 上传本地 PROTO 文件并点击【下一步】按提醒指引完成创建即可

4.4 SOAP
- 在 API 管理应用下的API菜单中,点击【+API】旁的下拉菜单按钮
- 选择导入 API

- 选中 WSDL 文件类型
- 上传本地 WSDL 文件或引用在线 URL,并点击【下一步】按提醒指引完成创建即可

4.5 Dubbo/HSF
- 在 API 管理应用下的API菜单中,点击【+API】按钮;
- 在新建 API 页面中,先选择 RPC 协议,再选择 HSF 或 DUBBO即可。

5、写在最后
API 接口协议制定了接口信息的传递标准规范,不同的接口协议对接口管理工具来说都会拥有不同的底层功能逻辑。所以接口管理工具很难在短时间内完善的新增一种协议的文档管理和接口调试。
而Eolink Apikit 从上线7年以来,一直不断的自研创新,解决了一个又一个多协议管理的难题,才最终脱颖而出成为市场上支持主流协议最全面的产品。而我们将继续保持初心,砥砺前行。继续做好国产自主 API 管理软件,在 API 管理领域上带来更多新的突破。
API 接口主流协议有哪些?如何创建 HTTP/HTTP、WebSocket/WebSockets、TCP/UDP、gRPC、SOAP、Dubbo/HSF 等不同协议?的更多相关文章
- 使用API接口在zabbix系统中登陆、创建、删除agent
一.API的介绍 API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力 ...
- 测开大佬告诉你:如何5分钟快速创建restful风格的API接口-使用django restframework框架
一.思考❓❔ 1.创建API接口难吗? 软件测试工程师: 只测过API接口, 从没创建过 应该需要掌握一门后端开发语言和后端开发框架吧!? 脑容量有限,想想就可怕 2.如何创建API接口呢? 使用Dj ...
- 个人微信号二次开发SDK协议,个人微信号二次开发api接口
通过这个API接口可以做什么? 通过我们提供的API接口您可以开发: 工作手机(如:X创,X码,XX管家等) 微信群讲课软件(如:讲课X师,一起X堂等) 微信社群管理软件(如:小X管家,微X助手等) ...
- 分享一个开源免费、目前最好的API接口管理平台----eoLinker
一.概况 eoLinker 是目前业内领先.国内最大的在线 API 接口管理平台,提供自动生成 API 文档.API 自动化测试.Mock 测试.团队协作等功能,旨在解决由于前后端分离导致的开发效率低 ...
- etcd api 接口
etcd api接口 基本操作api: https://github.com/coreos/etcd/blob/6acb3d67fbe131b3b2d5d010e00ec80182be4628/Doc ...
- Web API接口设计经验总结
在Web API接口的开发过程中,我们可能会碰到各种各样的问题,我在前面两篇随笔<Web API应用架构在Winform混合框架中的应用(1)>.<Web API应用架构在Winfo ...
- Http下的各种操作类.WebApi系列~通过HttpClient来调用Web Api接口
1.WebApi系列~通过HttpClient来调用Web Api接口 http://www.cnblogs.com/lori/p/4045413.html HttpClient使用详解(java版本 ...
- 构建微服务-使用OAuth 2.0保护API接口
微服务操作模型 基于Spring Cloud和Netflix OSS 构建微服务-Part 1 基于Spring Cloud和Netflix OSS构建微服务,Part 2 在本文中,我们将使用OAu ...
- ASP.NET Core 实战:构建带有版本控制的 API 接口
一.前言 在上一篇的文章中,主要是搭建了我们的开发环境,同时创建了我们的项目模板框架.在整个前后端分离的项目中,后端的 API 接口至关重要,它是前端与后端之间进行沟通的媒介,如何构建一个 “好用” ...
- 【WebApi】通过HttpClient调用Web Api接口
HttpClient是一个封装好的类,它在很多语言中都有被实现,现在HttpClient最新的版本是4.5. 它支持所有的http方法,自动转向,https协议,代理服务器. 一.Api接口参数标准化 ...
随机推荐
- Spring 笔记三 AOP
1.AOP 概述 AOP (Aspect-Oriented Programming,面向切面编程):是一种新的方法论,是对传统 OOP (Object-Oriented Programming,面 ...
- mac 安装go语言以及配置环境变量
Go官网下载地址:https://golang.org/dl/ Go官方镜像站(推荐):https://golang.google.cn/dl/ 其他版本自己根据系统版本下载,这里只介绍mac下载 一 ...
- go语言读取文件的简单使用
注意:打开文件记得一定要关闭 file, err := os.Open("文件名称") defer file.Close() 一.打开文件 1. file, err := os.O ...
- 常见Dos命令学习
Dos命令行 打开CMD方法 开始+系统+命令提示符(方便以管理员身份运行) Win+R 输入cmd 打开控制台(最常用) 在任意文件夹下,按住Shift键+鼠标右键点击,选择"在此处打开P ...
- LVS负载均衡 2022年4月
1. 负载均衡技术简介 2 1.1 负载均衡类型3 1.2 LVS简介4 1.3 Keepalived简介5 2. 负载均衡搭建主要步骤 6 2.1 LVS+Keepalived的负载均衡系统搭建6 ...
- Qt非主线程显示窗口的简易思路
首发于我的个人博客:xie-kang.com 博客内有更多文章,欢迎大家访问 原文地址 Qt 在非主线程是无法显示UI窗口的,如果我们在其它线程中处理完数据,需要使用窗口展示,或者在其它线程需要使用到 ...
- linux 命令行下适配 nvidia 驱动 - 搬运
linux 命令行下适配 nvidia 驱动 转自:https://www.cnblogs.com/chua-n/p/13208398.html 1. 下载相应驱动 在官网这里选择适应你 GPU 的驱 ...
- Conda 创建、激活、克隆、删除虚拟环境 - 搬运
Conda 创建.激活.克隆.删除虚拟环境 转自 :https://zhuanlan.zhihu.com/p/547724114 风影忍着 通常来说,对于每一个新的项目,我们都需要创建一个新的环境 ...
- 第七章ssh sftp scp
第七章ssh sftp scp 对数据进行了加密和压缩 版本号协商,可能客户端和服务端的版本号不一致,服务端向客户端发送一个ssh协商,告诉客户端使用的ssh协议的版本号是多少,客户端在接收到了这个协 ...
- .net core 使用 Nlog 集成 exceptionless 配置文件
nlog.config文件 安装nuget包: NLog.Web.AspNetCore Exceptionless.NLog 配置文件开始 <?xml version="1.0&quo ...