常见的接口分类

一、前言:
API作为应用程序编程接口,(API:Application Program Interface),可以使用不同的编程语言进行API的开发
API 与图形用户接口(GUI)或命令接口有着鲜明的差别:API 接口属于一种操作系统或程序接口,而后两者都属于直接用户接口。

二、按照接口表现形式,分类

序号 接口 基于或支持的协议 描述
1 HTTP 接口 HTTP协议 使用广泛、轻量级、跨平台、跨语言的,但凡是第三方提供的API都会有HTTP版本的接口。
2 RPC 接口 HTTP、TCP、UDP、自定协议 RPC技术是指远程过程调用,它本质上是一种Client/Server模式,可以像调用本地方法一样去调用远程服务器上的方法,支持多种数据传输方式(Json、XML、Binary、Protobuf等)
3 Web Service 接口 基于http协议的soap协议的封装和补充 Web Service其实是一种概念,我们可以将以WEB形式提供的服务称为Web Service,所以像RESTful、XML-RPC、SOAP等都可以当成是Web Service的一种实现方式。
4 RESTful HTTP协议 它不是一种规范,而是一种设计准则,用不同的HTTP动词(GET、POST、DELETE、PUT等)来表达不同的请求。
5 WebSocket udp、tcp 是一个底层的,双向通信协议 ,适合于客户端和服务器端之间信息实时交互
6 FTP TCP/IP 协议组中的协议之一 文件传输协议,FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。 其中FTP服务器用来存储文件

二、其他区别:
(1)把socket和http、webservices等等放在一起对比不是很合适,所谓http等的都是对socket进行了一次包装而已,socket更加底层

(2)不过Web Service接口和HTTP接口存在一些细小区别就是,Web Service接口支持更复杂的对象,而HTTP接口更多的就是传输字符串或者JSON文本。

三、四种类型:

接口 类型 描述
RPC 远程过程调用 通过作用在共享数据缓存器上的过程(或任务)实现程序间的通信
SQL 标准查询语言 是标准的访问数据的查询语言,通过通用数据库实现应用程序间的数据共享
FTP 文件传输 文件传输通过发送格式化文件,实现应用程序间数据共享
信息交付 信息交付 指松耦合或紧耦合应用程序间的小型格式化信息,通过程序间的直接通信实现数据共享

四、按照接口访问形式,分类:

分类
使用用户令牌,通过Web API接口进行数据访问 这种方式,可以有效识别用户的身份,为用户接口返回用户相关的数据,如包括用户信息维护、密码修改、或者用户联系人等与用户身份相关的数据。
使用安全签名进行数据提交 这种方式提交的数据,URL连接的签名参数是经过安全一定规则的加密的,服务器收到数据后也经过同样规则的安全加密,确认数据没有被中途篡改后,再进行数据修改处理。因此我们可以为不同接入方式,如Web/APP/Winfrom等不同接入方式指定不同的加密秘钥,但是秘钥是双方约定的,并不在网络连接上传输,连接传输的一般是这个接入的AppID,服务器通过这个AppID来进行签名参数的加密对比,这种方式,类似微信后台的回调处理机制,它们就是经过这样的处理。
提供公开的接口调用,不需要传入用户令牌、或者对参数进行加密签名 这种接口一般较少,只是提供一些很常规的数据显示而已。

在这里插入图片描述

发布了222 篇原创文章 · 获赞 4 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_42976139/article/details/103178147
今日推荐