HTTP协议六种请求⽅法,get,head,put,delete,post有什么区别标准Http协议⽀持六种请求⽅法,即:
1、GET
2、POST
3、PUT
4、Delete
5、HEAD
6、Options
但其实我们⼤部分情况下只⽤到了GET和POST。如果想设计⼀个符合RESTful规范的web应⽤程序,则这六种⽅法都会⽤到。不过即使暂时不想涉及REST,了解这六种⽅法的本质仍然是很有作⽤的。⼤家将会发现,原来web也是很简洁明了的。下⾯依次说明这六种⽅法。
1,GET:GET可以说是最常见的了,它本质就是发送⼀个请求来取得服务器上的某⼀资源。资源通过⼀组HTTP头和呈现据(如HTML ⽂本,或者图⽚或者视频等)返回给客户端。GET请求中,永远不会包含呈现数据。
2,HEAD:HEAD和GET本质是⼀样的,区别在于HEAD不含有呈现数据,⽽仅仅是HTTP头信息。有的⼈可能觉得这个⽅法没什么⽤,其实不是这样的。想象⼀个业务情景:欲判断某个资源是否存在,我们通常使⽤GET,但这⾥⽤HEAD则意义更加明确。
3,PUT:这个⽅法⽐较少见。HTML表单也不⽀持这个。本质上来讲, PUT和POST极为相似,都是向服务器发送数据,但它们之间有⼀个重要区别,PUT通常指定了资源的存放位置,⽽POST则没有,POST的数据存放位置由服务器⾃⼰决定。
举个例⼦:如⼀个⽤于提交博⽂的URL,/addBlog。如果⽤PUT,则提交的URL会是像这样的”/addBlog/abc123”,其中abc123就是这个博⽂的地址。⽽如果⽤POST,则这个地址会在提交后由服务器告知客户端。⽬前⼤部分博客都是这样的。显然,PUT和POST⽤途是不⼀样的。具体⽤哪个还取决于当前的业务场景。
4,DELETE:删除某⼀个资源。基本上这个也很少见,不过还是有⼀些地⽅⽐如amazon的S3云服务⾥⾯就⽤的这个⽅法来删除资源。      5,POST:向服务器提交数据。这个⽅法⽤途⼴泛,⼏乎⽬前所有的提交操作都是靠这个完成。
6,OPTIONS:这个⽅法很有趣,但极少使⽤。它⽤于获取当前URL所⽀持的⽅法。若请求成功,则它会在HTTP头中包含⼀个名
update是什么
为“Allow”的头,值是所⽀持的⽅法,如“GET, POST”。
其实还有⼀个 TRACE⽅法,不过这个基本上不会⽤到,这⾥就不介绍了。
以上的六种⽅法,我们可以跟数据库的CRUD增删改查操作对应起来: CREATE :PUT READ:GET UPDATE:POST DELETE:DELETE 这样⼀来就实现了HTTP和数据库操作(其实不光是数据库,任何数据如⽂件图表都是这样)的完美统⼀,这也是REST的精髓之⼀。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。