接口基础

1、什么是API接口?

  简单来说,接口就是系统或模块之间相互连接的部分,就称为接口。在软件测试中,我们可以理解为url就是一个接口,如:https://www.baidu.com/ 由客户端(浏览器)发送请求,服务端接收请求并做出响应。

2、接口定义规则?

  接口定义的规则,我们一般可以查看接口文档,一般包括访问地址、请求方法、请求参数以及响应格式等。

3、什么是接口测试?

  用户通过接口测试工具等客户端通过url向服务端发送数据或请求,看测试的接口的响应数据是否和预期结果一致。

4、接口url格式

  http://www.forexample.com:80/futureloan/path/myproject.html?key=value&key1=value1#someDoument

url一般由以下几个部分组成:

  • http:协议
  • /www.forexample.com:域名/IP
  • 80:端口
  • futureloan:前缀,一般用于区分业务的
  • path/myproject.html:路径
  • ?key=value&key1=value1:查询参数
  • #someDoument:锚点

5、HTTP协议

  接口需要通过协议实现的,广泛使用的是http协议,http(超文本传输协议),用户通过客户端访问某个url地址,发送请求给服务端,在服务端接收请求之后,解析请求的数据,然后再返回给客户端响应的数据。

5.1请求方法

get: 请求指定的资源,获取数据。也就是说,我客户端想要什么资源,你服务器就给我什么资源,我要的是文本,你就给我原样返回文本。

post:发送数据给服务器,创建或更新资源。当客户端要传输什么资源给服务器,就用post。

put:创建或替换目标资源。主要用于传输文件,类似ftp的文件上传

patch:用于对资源进行部分修改

delete:删除资源

5.2 post和get的区别

5.3 请求头

Accept

指定客户能够接收的内容类型

Accept Charset

浏览器可以接收的字符编码集

Accept Encoding

指定浏览器可以支持的web服务器返回内容压缩编码类型

Accept Language

浏览器可接受的语言

Accept Ranges

可以请求网页实体的一个或多个子范围字段

AuthorizationHTTP

授权的授权证书

Cache Control

指定请求和响应遵循的缓存机制

Connection

表示是否需要持久连接

CookieHTTP

请求发送时,会把保存在该请求域名下的所有cookie值一起发送给web服务器

Content Length

请求的内容长度

Content Type

请求的实体与对应的MIME信息

Date

请求发送的日期和时间

Expect

请求的特定服务器行为

From

发出请求的用户的Email

Host

指定请求服务器的域名和端口号

If-Match

只有请求内容与实体相匹配才有效

If-Modified-Since

如果请求的部分在指定时间之后被修改则请求成功,未被修改则返回304代码。

If-None-Match

如果内容未改变返回304代码,参数为服务器先前发送的Etag,与服务器回应的Etag比较判断是否改变

If-Range

如果实体未改变,服务器发送客户端丢失的部分,否则发送整个实体。

If-Unmodified-Since

只在实体在指定时间之后未被修改才请求成功。

Max-Forwards

限制信息通过代理和网关传送的时间。

Pragma

用来包含实现特定的指令。

Proxy-Authorization

连接到代理的授权证书。

Range

只请求实体的一部分,指定范围。

Referer

先前网页的地址,当前请求网页紧随其后,即来路。

TE

客户端愿意接受的传输编码,并通知服务器接受接受尾加头信息

Upgrade

向服务器指定某种传输协议以便服务器进行转换(如果支持

User-AgentUser-Agent

的内容包含发出请求的用户信息。

Via

通知中间网关或代理服务器地址,通信协议。

Warning

 

关于消息实体的警告信息

5.4 http响应状态码

1xx

信息,服务器收到请求,需要请求者继续执行操作

2xx

成功,操作被成功接收并进行处理

3xx

重定向,需要进一步的操作以完成请求(某个接口不服务了,自动跳转到另一个地址)

4xx

客户端错误,请求包含语法错误或无法完成请求

5xx

服务器内部错误,服务器在处理请求的过程中发生了错误

常见的响应状态码

状态码

英文名称

描述

200

OK

请求成功。一般用于GETPOST请求

201

Created

已创建。成功请求并创建了新的资源

301

Moved Permanently

永久移动。请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替

302

Found

临时移动。与301类似。但资源只是临时被移动。客户端应继续使用原有URI

304

Not Modified

未修改。所请求的资源未修改,服务器返回此状态码时,不会返回任何资源。客户端通常会缓存访问过的资源,通过提供一个头信息指出客户端希望只返回在指定日期之后修改的资源

400

Bad Request

客户端请求的语法错误,服务器无法理解

401

Unauthorized

请求要求用户的身份认证

403

Forbidden

服务器理解请求客户端的请求,但是拒绝执行此请求

404

Not Found

服务器无法根据客户端的请求找到资源(网页)。通过此代码,网站设计人员可设置"您所请求的资源无法找到"的个性页面

405

Method Not Allowed

客户端请求中的方法被禁止

500

Internal Server Error

服务器内部错误,无法完成请求

503

Service Unavailable

由于超载或系统维护,服务器暂时的无法处理客户端的请求。延时的长度可包含在服务器的Retry-After头信息中

5.5 响应头set-cookie和请求头cookie

 set-cookie

  是服务器设置的,就是服务端想把一些数据返回给客户端,然后由客户端保存在cookie中,当用户访问相同域名的不同接口时,cookie的数据就会自动传递到服务器中,通过在请求头加上cookie字段的方式。

posted @ 2022-09-23 20:35  小疯狗  阅读(56)  评论(0编辑  收藏  举报