参考: 1、一堆博客 2、http图解(链接奉上,自取 提取码: n6jq
HTTP共有九种方法,分别为
GET、POST、PUT、DELETE、CONNECT、OPTIONS、TRACE、PATCH、HEAD
1、最为常用的两种方法
GET and POST
GET 与 POST 较为常见的两种请求。
比较(随时更新,暂时了解这么多)
GET:是从目标主机请求(得到)指定的资源,请求的参数通常是以键值对的形式在URL中发送到目标主机(数据量很小,参数明文,请求会被浏览器缓存,可保留在浏览记录,通常有长度限制,不要处理敏感数据[账号,密码以及其他隐私信息]),刷新页面无影响。GET 发送一个tcp数据包,会一次将header和data发送出去。
POST:目的是向目标主机提交数据(可能是表单,或者其他文件,数据量可能会非常大),可能会新建资源,或者修改现有资源,请求的参数通常也是以键值对(列表,字典等形式,通常被保存在请求体body中),数据量没有要求,请求不会被保存,当然也不会被缓存,不能存在历史记录,因此可以处理敏感数据,但刷新页面数据会被重复提交。POST提交的body是URI的从属物。POST请求发送两个TCP数据包,第一个为请求头,若返回100 continue之后,会再次发送data数据
详解POST
post的提交的数据都在body中,但数据的格式则可以自己进行确定。常用的数据格式:
1、application/x-www-form-urlencoded ,通常来说,如果不去刻意的设置enctype属性,就会默认是以此格式数据进行提交,此时提交的数据会进行URL转码,也就是说,提交的数据就像get提交的数据形式一样,都是以键值对进行传参,且以“="为键、值对的分隔符,并且在参数之间以“&”符连接。
2、
2、PUT and PATCH
PUT 和 PATCH 都用于对资源的更新
PUT请求是向目标主机指定的位置上传资源,用于更新服务器内容,但更新的整个页面,但PUT只会对已经存在的资源进行更新
PATCH请求也是用于更新,但其只是部分资源的更新,但在PATCH不存在时候,其会创建一个新的资源
3、DELETE
DELETE 请求是删除所指定的URI的位置的资源。
4、OTHER
不常用,不赘述