标准Http协议支持六种请求方法,即:
- 1、GET
- 2、HEAD
- 3、POST
- 4、PUT
- 5、DELETE
但其实我们大部分情况下只用到了GET和POST。
1、GET
作用:GET可以说是最常见的了,它本质就是发送一个请求来取得服务器上的某一资源,可以理解为select操作。
特点:GET方式提交的数据最多只能是2KB字节;get请求会把请求的参数附加在URL后面,这样会产生安全问题,如果是系统的登陆接口采用的get请求,需要对请求的参数做一个加密。
2、HEAD
作用:HEAD和GET本质是一样的,区别在于HEAD不含有呈现数据,而仅仅是HTTP头信息。有的人可能觉得这个方法没什么用,其实不是这样的。想象一个业务情景:欲判断某个资源是否存在,我们通常使用GET,但这里用HEAD则意义更加明确。
3、POST
作用:向服务器提交数据,常用于提交表单。可以理解为insert操作。这个方法用途广泛,几乎目前所有的提交操作都是靠这个完成。
特点:理论上POST方式,对提交的数据大小没有限制;数据通过http协议的body体中进行传递,不会暴露用户信息,相对安全。
4、PUT
作用:用于向服务端更新数据,与post的使用很相似。可以理解为update操作。
特点:这个方法比较少见。HTML表单也不支持这个。本质上来讲, PUT和POST极为相似,都是向服务器发送数据,但它们之间有一个重要区别,PUT通常指定了资源的存放位置,而POST则没有,POST的数据存放位置由服务器自己决定。
举个例子:POST主要作用在一个集合资源之上的(url),而PUT主要作用在一个具体资源之上的(url/xxx),通俗一下讲就是,如URL可以在客户端确定,那么可使用PUT,否则用POST。
5、DELETE
作用:用于删除服务端的某一资源。基本上这个也很少见,不过还是有一些地方比如amazon的S3云服务里面就用的这个方法来删除资源。