GET,POST,PUT,DELETE,OPTIONS等请求方式简单总结

以前作的java web项目,基本上只使用get和post的请求方式,可是如今新项目额外增长了put,delete,查了点资料,作个简单的总结。

一、GET-安全且幂等

get请求是用来获取数据的,只是用来查询数据,不对服务器的数据作任何的修改,新增,删除等操做。

在这里咱们认为get请求是安全的,以及幂等的。安全就是指不影响服务器的数据,幂等是指同一个请求发送屡次返回的结果应该相同。

特色:

get请求会把请求的参数附加在URL后面,这样会产生安全问题,若是是系统的登录接口采用的get请求,须要对请求的参数作一个加密。

get请求其实自己HTTP协议并无限制它的URL大小,可是不一样的浏览器对其有不一样的大小长度限制

二、POST-不安全且不幂等

post请求通常是对服务器的数据作改变,经常使用来数据的提交,新增操做。

特色:

post请求的请求参数都是请求体中

post请求自己HTTP协议也是没有限制大小的,限制它的是服务器的处理能力

三、PUT-不安全但幂等

put请求与post同样都会改变服务器的数据,可是put的侧重点在于对于数据的修改操做,可是post侧重于对于数据的增长。

四、DELETE-不安全但幂等

delete请求用来删除服务器的资源。

五、OPTIONS

options请求属于浏览器的预检请求,查看服务器是否接受请求,预检经过后,浏览器才会去发get,post,put,delete等请求。至于什么状况下浏览器会发预检请求,浏览器会会将请求分为两类,简单请求与非简单请求,非简单请求会产生预检options请求。

关于options请求具体详细的能够观看另外一位做者的这篇文章:https://www.jianshu.com/p/5cf82f092201

另外:这些不一样方式的请求形式,只是一种规范定义而已,并非说get请求没法修改服务器的数据,只是一种规范,好比你也能够全部的请求都经过post方式来访问,实现功能上面没有任何问题,只是说这种作不符合了规范而已,咱们日常编码仍是尽可能符合规范比较好。java

 

 

转自:https://blog.csdn.net/zhenwei1994/article/details/84399999web

 

转自:浏览器

相关文章
相关标签/搜索