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

之前做的java web项目,基本上只使用get和post的请求方式,但是现在新项目额外增加了put,delete,查了点资料,做个简单的总结。

1、GET-安全且幂等

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

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

特点:

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

get请求其实本身HTTP协议并没有限制它的URL大小,但是不同的浏览器对其有不同的大小长度限制

2、POST-不安全且不幂等

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

特点:

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

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

3、PUT-不安全但幂等

put请求与post一样都会改变服务器的数据,但是put的侧重点在于对于数据的修改操作,但是post侧重于对于数据的增加。

4、DELETE-不安全但幂等

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

5、OPTIONS

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

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

另外:这些不同方式的请求形式,只是一种规范定义而已,并不是说get请求无法修改服务器的数据,只是一种规范,比如你也可以所有的请求都通过post方式来访问,实现功能上面没有任何问题,只是说这种做不符合了规范而已,我们平常编码还是尽量符合规范比较好。

 

 

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

 

转自:

posted @ 2019-04-08 22:03  qjm201000  阅读(704)  评论(0编辑  收藏  举报