GET请求
特点:
1、请求服务器信息资源
2、数据传输在URL后 以 ? 分割多个参数用 & 连接。 URL采用的是ASCII,需要先转换成ASCII再进行数据传输
3、数据长度一般不超过 2KB
4、服务端在地址栏接收参数 Request.QueryString 获取参数
5、数据显式显示安全度相对较低
POST请求
特点:
1、表单中的各段内容放到HTML HEADER中一起传送到ACTION属性指定的URL地址。用户看不到此过程
2、传送数据量大,一般没有限制
3、服务器接收表单 Request.Form 获取提交数据
4、数据传输性相对较好
$_REQUEST
支持GET和POST两种传输方式,是PHP预定义的超级全局变量
GET和POST的本质
GET/POST是HTTP协议中的两种发送请求方法,HTTP底层是TCP/IP,所以本质上GET和POST是没有区别的。
HTTP作为传输协议标准,对其进行了区分。
GET传输数据流程
GET数据传输只传输一次
浏览器将HTTP header和data一并发出,服务器响应200(返回数据)
POST传输数据流程
POST数据传输传输两次
浏览器先发送header,服务器响应100,继续浏览器发送data服务器响应200(返回数据)
GET传输方式和POST传输方式比较
1、GET与POST都有自己的传输规则
2、在网络环境好的前提下,发一次包和发两次包的时间差距可以忽略;在网络环境不好的前提下,发两次包更能验证数据包的完整性
3、并不是所有的浏览器都会在POST中发送两次包(火狐,只发一次包)