PHP GET 和 POST 的区别面试
阅读目录
1、url 可见性
- get,参数url可见;
- post,url 参数不可见;
2、数据传输上
- get,通过拼接url进行传递参数;
- post,通过 body 体传输参数;
3、缓存性
- get,请求是可以缓存的;
- post,请求不可以缓存;
4、后退页面的反应
- get 请求页面后退时,不产生影响;
- post 请求页面后退时,会重新提交请求;
5、传输数据的大小
- get一般传输数据大小不超过 2k-4k(根据浏览器不同,限制不一样,但相差不大);
- post请求传输数据的大小根据 php.ini 配置文件设定,也可以无限大。
6、安全性
post 比 get 安全,传输参数 url 不可见,但也挡不住部分人闲的没事在那抓包玩。安全性个人觉得是没多大区别的,防君子不防小人就是这个道理。对传递的参数进行加密,其实都一样。
由于协议规定,就导致 get 比 post更快,原因如下:
(1)post请求包含更多请求头
(2)请求的方式不一样
psot请求
1)浏览器请求tcp连接(第一次握手)
2)服务器答应进行tcp连接