Post、Get方法比较
Http请求:Get vs. Post
在两种客户端和服务器进行请求响应的常用方法为Get与Post。
- Get - 从指定的资源请求数据
- Post - 向指定的资源提交要处理的数据
Get 基本用于从服务器获取数据,而Post也可以从服务器获取数据。它们的区别在于Get方法可能返回缓存数据,而Post方法不会缓存数据。
比较 | Get | Post |
---|---|---|
后退按钮/刷新 | 无效 | 数据会重新提交 |
书签 | 可以收藏为书签 | 不能收藏为书签 |
缓存 | 能够被缓存 | 不能缓存 |
历史 | 参数保留在浏览器历史中 | 参数不会保存在浏览器历史中 |
对数据长度的限制 | 有限制 | 无限制 |
对数据类型的限制 | 只允许 ASCII 字符 | 没有限制,能够使用二进制数据 |
安全性 | 与Post比较,Get的安全性会差一些,因为所发送的数据是URL的一部分 | Post 相对于 Get 更加安全,因为参数不会保留在浏览器历史或web服务器中 |
可见性 | 数据在URL中对所有人可见 | 数据不会显示在URL中 | |
总结
相对来看,Get方法比Post方法要快,Post中无法使用缓存文件,向服务器发送大量的数据,却比Get方法更可靠。