GET与POST方法的区别
GET
- 一般用于从服务器上获取数组,使用URL传递参数,对所发送信息的数量也有限制,一般在2000个字符
POST
- 一般用于服务器上数据的修改/传送,对所发送信息的数量没有限制
GET方式需要使用
Request.QueryString
来取得变量的值,而POST方式通过Request.Form
来获取变量的值。也就是说,GET是通过地址栏来传值,而POST是通过提交表单来传值。
GET与POST的区别
- GET提交的数据会放在URL之后,以?分割URL和传输数据,参数之间以&相连,如
EditPosts.aspx?name=test1&id=123456.
。POST方法是把提交的数据放在HTTP包的Body中 - GET提交的数据大小有限制,最多只能由2K字节(因为浏览器对URL的长度有限制),而POST方法提交的数据没有限制
- GET方式需要使用
Request.QueryString
来取得变量的值,而POST方式通过Request.Form
来获取变量的值。 - GET方式提交数据,会带来安全问题,比如一个登录界面,通过GET方式提交数据时,用户名和密码将出现在URL上,如果页面可以被缓存或者其他人可以访问这台机器,就可以从历史记录获得该用户的账号和密码。
在以下情况中使用POST请求
- 无法使用缓存文件(更新服务器上的文件或数据库)
- 向服务器发送大量数据(POST没有数据量限制)
- 发送包含未知字符的用户输入时,POST比GET更稳定也更可靠