http接口知识

文章目录

      • 1. 接口介绍
        • 1.1 接口的基本知识
      • 2. http协议
        • 2.1 协议介绍
        • 2.2 session、token
        • 2.3 授权和鉴权
        • 2.4 get和post的区别
      • 3. 接口测试工具
        • 3.1 基本介绍

1. 接口介绍

1.1 接口的基本知识
  • 定义

接口:指外部系统与系统之间以及内部各子系统之间的交互点。外部接口、内部接口,内部接口又包括:上层服务与下层服务接口、同级接口

  • 接口分类

按内外部分:外部接口、内部接口,内部接口又包括:上层服务与下层服务接口、同级接口
按协议分:http、webservice、dubbo、socket
https://blog.csdn.net/u011233568/article/details/78537386

  • 接口本质

经过封装的类
传递数据的通道

  • 接口测试的本质

模拟客户端向服务器发送请求

2. http协议

2.1 协议介绍
  • HTTP协议方法
  • GET----读取数据,不修改数据
  • POST----提交表单、上传文件等,一般用于修改或创建资源
  • PUT----提交数据,一般用于修改
  • DELETE----请求删除某资源
  • HEAD----和GET类似,但服务器不返回body,仅返回头。可查看资源修改日期。
  • OPTIONS----服务器返回资源支持的HTTP请求方法
  • TRACE----回显服务器收到请求,用于诊断和测试
  • CONNECT----预留给能够将连接改为管道方式的代理服务器
  • HTTP请求头

https://jingyan.baidu.com/article/375c8e19770f0e25f2a22900.html

字段 释义 示例
Host 请求的主机名
Accept 能够接受的返回内容类型 text/html;*
Accept-Encoding 能够接受的内容类型编码 gzip,deflate
Authorization 客户端认证信息 Basic dXNIcjpwYXNz
Connection 客户端使用的连接类型 keep-alive upgrade close
cookies 保存在该请求域名下的所有cookies值
content-Type requestion的body部分类型 application/x-www-form-urlencoded multipart/form-data
content-Length requestion的body部分长度
range 仅请求某个实体的一部分。字节偏移从0开始
Referer 之前网页Url,可以根据此判断访问来源
User-Agent 浏览器类型,一般包含名称、版本、操作系统信息等
X-Requested-With 用于标记Ajax XMLHttpRequest
  • http状态码

https://baike.baidu.com/item/HTTP%E7%8A%B6%E6%80%81%E7%A0%81/5053660?fr=aladdin

  • 1xx消息–请求已被服务器接收,继续处理
    101—协议的切换
  • 2xx成功–请求已成功被服务器接收、理解、并接收
    200成功
    201 created 新创建资源,比如新建帖子
    202 请求已收到,需等待处理
  • 3xx重定向–需要后续操作才能完成这一请求
    301 永久重定向
    302 临时重定向
  • 4xx请求错误–请求含有此法错误或者无法执行
    401 需要授权—输入用户名密码
    403 禁止访问—服务器知道客户端是谁,但客户端无权限
    404 Not Found
    405 方法不被允许
  • 5xx服务器错误–服务器在处理某个正确请求时发生错误
    503 服务停止
  • http响应头

https://blog.csdn.net/jeffasd/article/details/60140344

字段 释义 示例
Cache-Control 告诉缓存机制是否可以缓存及哪种类型 cache-control:publish,max-age=25920000
Connection 客户端使用的连接类型 keep-alive,close
Content-Encoding 服务器返回内容压缩编码类型 gzip
Content-Disposition 可以让客户端下载文件并建议文件名 Content-Disposition:attachment;filename=“abc.txt”
Set-Cookies 设置cookies
content-Type Response的body部分类型 application/x-www-form-urlencoded multipart/form-data
content-Length Response的body部分长度
Location 重定向时,重定向到的网址
expires 相应过期时间 expires:
Last-Modified 资源最后修改时间 Last-Modified:
Refresh 多少秒后重定向到某个网站 Refresh: 10;url=http://163.com
Server web服务器名称 Server:nginx/1.7.12
Upgrade 协议升级用,表示已经升级到了什么协议 Upgrade:web socket
2.2 session、token
  • cooike和session

https://www.cnblogs.com/nickjiang/p/9148136.html

  • session和token的区别

https://blog.csdn.net/love_onefly/article/details/80738888

2.3 授权和鉴权
  • 鉴权

(权限鉴定)访问的接口是否正常,是否是非法访问,绕过前端访问,一般系统使用session、token做鉴权

  • 授权

是否具有访问接口的权限,一般来说是唯一的、全局的、动态的,具有一定特征。(key)
https://blog.csdn.net/sjy8207380/article/details/79232644

2.4 get和post的区别
  • get
  • 通过url传参并进行url编码,不安全
  • 产生一个TCP数据包
  • 浏览器会把http header和data一并发送出去,服务器响应200(返回数据)
  • Post
  • post通过body传参,支持多种编码方式
  • 产生两个TCP数据包。
  • 浏览器先发送header,服务器响应100(continue),然后再发送data,服务器响应200(返回数据);
  • 数据和URL不会拼接到一起,post用额外的数据格式去传递如json/xml。

3. 接口测试工具

3.1 基本介绍
  • 原理:模拟客户端向服务端发送请求
  • 工具:jemeter、soupui、postman、fidder、loadrunner

你可能感兴趣的:(测试基础,接口测试,interface)