一,get请求
1,从服务器获取数据,返回响应的实体部分
2,没有请求体
3,请求参数附在url后面,以?号开始,多个参数之间使用&分割,
4,通常对数据不敏感的请求使用get请求,因为参数跟在url后面会暴露,不安全
5,传输的参数是有限制的,大多数浏览器的限制在2k-8k之间,更老的版本浏览器甚至只支持255 bytes。
二,post请求
1,向指定资源地址提交数据进行处理(如提交表单或上传文件),数据包含在请求体中,post请求会导致新的资源的简历或修改已有资源。
2,post请求可包含请求体,请求参数存放在请求体中,可以是任意格式,相比于get请求,数据比较安全。
3,请求数据没有大小限制。
三,get请求中params参数和post请求中data等参数区别
1,get请求使用params参数,由于get请求没有请求体,请求参数是跟在url地址后面的,而且服务器也只能通过解析url获得请求的参数,因此get方法发送get请求时只能使用params参数,此参数会自动的把get请求参数默认追加到url地址后面。
2,post方法通常用于提交一些数据,如提交一个form表单时,可以构造一个字典格式的数据,使用data参数传递;由于post请求的请求参数包含在请求体中,服务器只能通过解析请求体中的内容获得请求参数,所以post请求不能使用params参数,而是使用data,json,file等参数,把请求参数放到请求体中。
四,post请求中data和json参数
data参数和json参数是最常用的post请求参数,而且参数格式看起来也是一样,那么如何区别使用呢?
--->通过接口支持的参数类型加以区分使用!
1,data参数:当post请求的接口默认支持参数类型为Content-Type为application/x-www-form-urlencoded时,表示请求参数需要传递一个form表单,此时通过构造data参数传递form表单。(参数是字典类型)
2,json参数:当post请求的接口支持类型为content_type为application/json时,表示通过构造json参数来传递接口参数。(参数类型可以是字典或json类型)