3.Requests【HTTP协议】请求

一、前言

我们上节课总体了解了http协议的相关概念,这节课我们专门针对请求做详细讲解。我们做接口自动化,其实就是通过requests模块模拟浏览器向服务器发送请求,来获取服务器返回的信息,爬虫也是运用了这个思想。我们要模拟发送请求,首先要知道请求的组成。

二、学习目标

1.请求报文的构成

2.模拟请求需要准备哪些参数

三、知识点

1.【请求报文的构成】

2.【模拟请求需要准备哪些参数】

我们刚刚已经讲了浏览器发送的接口请求报文的构成,用requests模块模拟浏览器发送请求时,请求数据尽量与浏览器真实的请求一致,所以在模拟请求时,必须有下列数据:

  • 请求方法:接口的请求方式,如GET、POST

  • 请求地址URL: 接口请求目标服务器的url地址,如http://127.0.0.1:8080/form/entry

  • 请求头:请求头的数据很多没有必要全部传,重点传以下几个即可

    • User-Agent:产生请求的浏览器类型。用以区分该请求是浏览器发的还是脚本发的。
    • Content-Type:代表发送端发送的数据格式。这个在post请求中重点讲解。
    • Cookie:HTTP请求发送时,会把保存在该请求域名下的所有cookie值一起发送给web服务器。登录后的接口一把用cookie验证用户是否有权限访问。
  • 请求体:代表发送端发送的具体数据。这个在post请求中重点讲解。

    请求体的数据格式是Content-Type规定的,在post请求中不同的数据格式的在requests模块中传参方式是不同的:

    • Content-Type为application/x-www-form-urlencoded:requests.post()方法中需要用data参数传参
    • Content-Type为application/json:requests.post()方法中需要用json参数传参
posted @ 2023-01-17 10:04  测开星辰  阅读(100)  评论(0编辑  收藏  举报