GET和POST区别及缓存问题

2.就是get和post区别的缓存问题。

首先要了解什么是缓存。

HTTP缓存的基本目的就是使应用执行的更快,更易扩展,但是HTTP缓存通常只适用于idempotent request(可以理解为查询请求,也就是不更新服务端数据的请求),这也就导致了在HTTP的世界里,一般都是对Get请求做缓存,Post请求很少有缓存。

get多用来直接获取数据,不修改数据,主要目的就是DB的search语句的感觉。用缓存(有个代理服务器的概念)的目的就是查db的速度变快。

post则是发送数据到服务器端去存储。类似db里的update delete和insert语句的感觉。更新db的意思。数据必须放在数据库,所以一般都得去访问服务器端。


3.安全问题。

get请求参数在url中,即传送的数据是在链接里面可看到,有安全问题。

post参数不是在url里面而是在请求体中,因此安全性较get高

 

 

4.安全问题Get请求的最大长度

各浏览器HTTP Get请求URL最大长度并不相同,几类常用浏览器最大长度及超过最大长度后提交情况如下:

IE6.0                :url最大长度2083个字符,超过最大长度后无法提交。
IE7.0                :url最大长度2083个字符,超过最大长度后仍然能提交,但是只能传过去2083个字符。
firefox 3.0.3     :url最大长度7764个字符,超过最大长度后无法提交。
Opera 9.52       :url最大长度7648个字符,超过最大长度后无法提交。
Google Chrome 2.0.168   :url最大长度7713个字符,超过最大长度后无法提交。

猜你喜欢

转载自www.cnblogs.com/kangleweb/p/10930544.html