python接口自动化之HTTP通信基础

接口概念

  • 接口的分类

    • 外部接口、内部接口
    • 按照不同的请求协议不同:http webservice dubbo socket
      • webservice实质是http进行了一层封装,只有post类型
      • dubbo近来兴起
  • 接口测试

    测试类里面的方法/函数,输入不同的参数对类里面的函数进行测试。

  • http请求类型

    • get
    • post
    • put
    • delete
    • head
    • options
    • trace
    • connect

剖析http request

通过f12、抓包工具(中转站)抓取数据包

一个http request指从客户端到服务端的请求信息,包括了一下的信息:

  • 请求行

    • 请求url
    • 请求方法
    • HTTP协议版本
  • 请求头 request headers

    参考:https://blog.csdn.net/alexshi5/article/details/80379086

  • 请求正文

剖析http response

  • 状态码

    • 200 成功
    • 302 临时重定向
    • 304 未修改
    • 404 资源不存在
    • 500 服务器错误
    • 504 服务器超时
  • 响应头

    参考:https://www.runoob.com/http/http-header-fields.html

  • 响应正文

    针对请求正文从服务器响应回来的数据,常见html、xml、json

剖析cookie session token

  • cookie 在客户端存储用户的一些数据,比如说用户名、浏览记录之类,是在登录后产生的,登录时不需要传cookie

  • session 在服务端记录用户的请求状态,一般默认是30min

  • session_id会存在cookie中,每次请求cookie中的所有信息都会传递给服务器,服务器通过session_id来识别是否是同一个用户的请求。不是同一个用户的话,就会要求用户重新登录

  • 为什么会有cookie-session机制?

    因为http是无状态的,他的每一次请求是没有状态标记的

  • token 鉴权

  • 缓存 cookie是缓存中的一小部分,除了cookie,还有图片、资源

剖析访问授权

  • 鉴权

    访问的接口是否正常,是否是非法访问,绕过前端访问。----token

  • 授权

    是否具有访问接口的权限。----key

    一般来说:是唯一的,全局的,动态的,具备一定特征

接口的本质

  • 什么是接口?传递数据的通道

  • 接口的本质 客户端--interface--服务端

  • 数据流向

  • 一个http请求的数据回路和响应回路

如何利用jmeter做接口测试

  • 免费接口网站 https://www.juhe.cn/docs (需实名)
  • 老黄历免费API:https://www.juhe.cn/docs/api/id/65 ,注册账户后才有属于自己的唯一key,才可以访问接口
  • 线程组- http request -查看结果树

你可能感兴趣的:(python接口自动化之HTTP通信基础)