区别:
1.Get是从服务器上获取数据,Post是向服务器传送数据。
2.Get是把参数数据队列加到提交表单的Action属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。Post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML header内一起传送到Action属性所指向的URL地址。用户看不到这个过程。
3.对于Get方式,服务器端用Request QueryString获取变量的值,对于Post方式,服务器端用Requst Form获取提交的数据。
4.Get传送的数据量较小,不能大于2KB。Post传送的数据量较大,一般被默认为不受限制。但理论上,IIS中的最大量为80KB,IIS5中位100KB。
5.Get安全性比较低,Post安全性较高。但是执行效率却比Post方法好。
注意:
与 POST 相比,GET 更简单也更快,并且在大部分情况下都能用。
然而,在以下情况中,请使用 POST 请求:
- 无法使用缓存文件(更新服务器上的文件或数据库)
- 向服务器发送大量数据(POST 没有数据量限制)
- 发送包含未知字符的用户输入时,POST 比 GET 更稳定也更可靠
建议:
1.Get方式的安全性较Post方式要差些,包含机密信息的话,建议使用Post数据提交方式;
2.在做数据查询时,建议用Get方式;而在做数据添加;修改、删除时,建议使用Post方式;