001 接口基础知识
一、接口的基本概念
1.接口
接口又叫API(APPlication Programming Interface,应用程序编程接口的简称),接口可以包含方法、属性、索引器和事件作为成员,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而无需访问源代码,或理解内部工作机制的细节。
2、接口测试
接口测试是对系统和组件之间的接口进行测试,主要是效验数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系。其中接口协议分为HTTP,RPC,Webservice,,RESTful等类型。
二、接口的组成
1、协议
常见的web接口分为http api接口和webservice接口(如SOAP、RMI、RPC协议)
| 接口 |
基于或支持的协议
| 描述 |
|---|---|---|
| HTTP接口 |
HTTP协议
| 使用广泛、轻量级、跨平台、跨语言的,但凡是第三方提供的API都会有HTTP版本的接口。 |
| RPC接口 |
HTTP、TCP、UDP、自定协议
| RPC技术是指远程过程调用,它本质上是一种Client/Server模式,可以像调用本地方法一样去调用远程服务器上的方法,支持多种数据传输方式(Json、XML、Binary、Protobuf等) |
| Web Service 接口 |
基于http协议的soap协议的封装和补充
| Web Service其实是一种概念,我们可以将以WEB形式提供的服务称为Web Service,所以像RESTful、XML-RPC、SOAP等都可以当成是Web Service的一种实现方式。 |
| RESTful |
HTTP协议
| 它不是一种规范,而是一种设计风格,用不同的HTTP动词(GET、POST、DELETE、PUT等)来表达不同的请求。 |
| WebSocket |
UDP、TCP协议
| 是一个底层的,双向通信协议 ,适合于客户端和服务器端之间信息实时交互 |
| FTP |
TCP/IP 协议组中的协议之一
| 文件传输协议,FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。 其中FTP服务器用来存储文件 |
2.IP地址/域名
IP地址是IP协议提供的一种统一的地址格式,它未互联网上的每一个网络和每一台主机分配一个逻辑地址。相当于每个人都有一个身份证
查看IP:windows下命令行输入:ipconfig

由于IP地址不容易记忆,为IP地址赋予一个利于记忆的别名,即为域名,如:百度的IP为61.135.169.125,对应的域名为www.baidu.com
查看域名对应的IP:ping www.baidu.com
DNS即域名解析系统,域名与解析系统映射的一个分布式数据库,提供域名转到对应的IP服务
3.端口
端口:设备与外界通讯交流的出口,如果不填端口,默认是80,否则需要填写端口号
查看端口:windows下:netstat -ano
4.接口路径
在定义一个接口时,会写好接口路径和接口方法名的映射,然后前端通过接口路径来调用方法
如:https://image.baidu.com/search/detail,其中search/detail就是路径
6.请求值
1)请求方式
以HTTP协议接口为例,接口请求的六种常见方式:
1、Get 向特定资源发出请求(请求指定页面信息,并返回实体主体)
2、Post 向指定资源提交数据进行处理请求(提交表单、上传文件),又可能导致新的资源的建立或原有资源的修改
3、Put 向指定资源位置上上传其最新内容(从客户端向服务器传送的数据取代指定文档的内容)
4、Head 与服务器索与get请求一致的相应,响应体不会返回,获取包含在小消息头中的原信息(与get请求类似,返回的响应中没有具体内容,用于获取报头)
5、Delete 请求服务器删除request-URL所标示的资源*(请求服务器删除页面)
6、opions 返回服务器针对特定资源所支持的HTML请求方法 或web服务器发送*测试服务器功能(允许客户端查看服务器性能)
2)请求头
请求头包含许多有关的客户端环境和请求正文的有用信息。例如,请求头可以声明浏览器所用的语言,请求正文的长度。例如:

3)请求体
请求体就是请求等正文了,可以有很多种请求体。
json格式
xml格式
html格式
二进制格式( 多数用于图片 )
字符串格式
7、响应值
1)状态码
- 1xx 信息响应。 收到并理解的请求。 请求处理将继续。
- 2xx 成功。 已成功接收、理解和接受该操作。
- 3xx 重定向。 客户端必须采取进一步操作才能完成请求。
- 4xx 客户端错误。 可能是客户端导致的错误。 请求包含错误的语法或无法实现。
- 5xx 服务器错误。 服务器遇到错误,无法满足请求。
2)响应头
HTTP请求头提供了关于请求,响应或者其他的发送实体的信息。例如:

4)响应内容
即接口返回的具体内容,例如:

浙公网安备 33010602011771号