requests是模拟HTTP、https请求接口。
一、HTTP协议介绍
1.1HTTP协议特点
1.2HTTP协议组成
请求方法
主要的请求方法有:GET、POST、DELETE 、PUT 、HEAD 等方法
最最常用的方法就是:GET方法、POST方法
get与post方法的特点:
GET方法:
-
GET 方法提交数据不安全,数据置于请求行,浏览器地址栏可见;
-
GET 方法URL长度每个浏览器限制数量不同,最后在2000字符以内
-
GET方法速度快
-
默认的请求方法,不需要提交大量数据、无敏感、保密数据时使用
-
可能会被缓存
-
请求可能会被保留在浏览器历史记录中
POST方法:
-
POST 方法提交数据安全,数据置于消息主体内,浏览器地址栏不可见
-
POST 方法提交的数据大小没有限制
-
POST 方法速度慢
-
需要提交大量数据、有敏感、保密数据时使用
-
不会被缓存
-
请求不会被保留在浏览器历史记录中
1.3 HTTP响应
响应报文格式:
第一部分:叫状态行。独占一行。由:协议/协议版本、状态码、状态描述符组成
第二部分:从第二行至第N行,叫响应头。由键值对组成。由N对
第三部分:叫空行,独占一行。由回车换行符组成
第四部分:叫响应体。响应回来的数据格式(多种)
HTTP响应状态码(常见)
-
200 客户端请求成功
-
301 永久性重定向
-
302 临时性重定向
-
403 服务器收到请求,但拒绝提供服务。
-
404 请求的资源不存在
-
500 服务器发生不可预期的错误。
请求/响应头中,重要的参数
(一)、Content-Type参数
Content-Type,叫:是Internet Media Type,互联网媒体类型。存在于请求中或响应中:
-
如果出现在请求中,则表示:告诉服务端客户端实际发送的数据类型。
-
如果出现在响应中,则表示:告诉客户端服务端实际发送的数据类型。
在【请求】中,常见的数据类型有:
-
application/x-www-form-urlencoded-----> 以“键-值”对的方式组织的数据
-
application/json -----> JSON 字符串格式提交数据
-
multipart/form-data-----> 一般需要上传文件的表单则用该类型
(二)、Cookie参数
Cookie参数,也是一个很重要的参数,存在于请求或响应中。
源头在服务端,服务端向客户端设置Cookie后,浏览器会自动把Cookie添加到每次请求的请求头中。一般用在用户登录或记住用户名等地方。
2.请求方法对应的参数
口诀1:params参数,如果传入的是字典,自动编码为表单。---一般get请求需要
口诀2:data参数,如果传入的是字典,自动编码为表单。
口诀3:data参数,如果传入的是字符串,按原格式直接发布出去。
口诀4:json参数,如果传入的是字典,自动编码为json字符串。
口诀5:json参数,如果传入的是字符串,按原格式基础上添加双引号发布出去。
一般规律总结:
get请求:用参数data
post请求:表单用data,json格式用json。