get和post的区别,你真的理解吗?

来源:互联网 发布:凡人修真2源码 编辑:程序博客网 时间:2024/04/30 03:24

1、Get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。

2、对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。两种方式的参数都可以用Request来获得。

3、Get 方式传输的数据量非常小,一般限制在 2 KB 左右,但是执行效率却比 Post方法好;而 Post 方式传递的数据量相对较大,它是等待服务器来读取数据,不过也有字节限制,这是为了避免对服务器用大量数据进行恶意攻击。

4、

跟是一样的,也就是说,action页面后边带的参数列表会被忽视;而 跟 是不一样的。
    建议:除非你肯定你提交的数据可以一次性提交,否则请尽量用 Post 方法

5、Get安全性非常低,Post安全性相对较高。
    Get 方式提交数据,会带来安全问题,比如一个登陆页面,通过 Get 方式提交数据时,用户名和密码将出现在URL上,那就太雷人了,如果页面可以被缓存或者其他人可以访问客户这台机器,就可以从历史记录获得该用户的帐号和密码,所以表单提交建议使用Post 方法;Post 方法提交的表单页面常见的问题是,该页面如果刷新的时候,会弹出一个对话框,但是如果Http请求被截获,那么还是可以从请求头中还是可以看到,所以应该发送的敏感的请求信息进行加密。最好的解决方式就是不使用HTTP协议,而使用HTTPS协议。
    建议:出于安全性考虑,建议最好使用 Post 提交数据。

0 0