1>get方法是用于信息获取,他是安全的(安全指的是非修改信息)
post方法是用于修改服务器上资源的请求
2>get请求的数据会附在URL之后
post方法提交的数据则放置在HTTP报文实体的主体里
3>post比get安全
4>因为get是通过URL提交数据而URL本身对数据没有限制,但是不同的浏览器对URL有限制,所以get方法传输的数据量一般限制在2KB。
post方法对数据大小没有限制,影响数据大小的是服务器处理程序的能力。
5>get请求只能进行url编码
Post请求支持多种编码方式
6>get请求会被浏览器主动cache
post请求不会,除非手动设置。
7>get方式服务器端用Request.QueryString获取变量的值
post方式服务器端用Request.Form获取提交的数据。
8>GET产生一个TCP数据包;POST产生两个TCP数据包;
get方式的请求,浏览器会把http header和data一并发送,服务器响应200
Post方式的请求,浏览器先发送header,服务器响应100,浏览器再发送data,服务器响应200
(两次包的TCP在验证数据包完整性上有非常大的优点,并不是所有浏览器都会在POST中发送两次包,Firefox就只发送一次)
9>get执行效率比post方法好。