get与post的区别

GetPost的区别

以前总认为getpost的区别是

1. GET使用URL或Cookie传参。而POST将数据放在BODY中。

2. GET的URL会有长度上的限制,则POST的数据则可以非常大。

3. POST比GET安全,因为数据在地址栏上不可见。

反驳结果如下:

1现代的Web Server都是支持GET中包含BODY这样的请求

2、浏览器与服务器的限制,并不是get

3、一些抓包工具完全可以看到BODY的内容

区别:一个用于获取数据,一个用于修改数据

 

 

 

POST和GET的差别其实是很大的。语义上,GET是获取指定URL上的资源,是读操作,重要的一点是不论对某个资源GET多少次,它的状态是不会改变的,在这个意义上,我们说GET是安全的(不是被密码学或者数据保护意义上的安全)。因为GET是安全的,所以GET返回的内容可以被浏览器,Cache服务器缓存起来(其中还有很多细节,但不影响这里的讨论)。

而POST的语意是对指定资源“追加/添加”数据,所以是不安全的,每次提交的POST,参与的代码都会认为这个操作会修改操作对象资源的状态,于是,浏览器在你按下F5的时候会跳出确认框,缓存服务器不会缓存POST请求返回内容。

posted @ 2012-08-31 15:32  爱我所艾  阅读(179)  评论(0编辑  收藏  举报