网页提交方式post和get的区别和联系

都知道GET一般用于获取/查询资源信息,而POST一般用于更新资源信息.但具体区别呢?可以互换吗?

主要区别有:1传输数据的方式不同,2传输的数据多少不同,3传输数据的安全性不同4,后台获取数据的方式不同

 

1传输数据的方式不同

GET提交的数据会放在URL之后,以?分割URL和传输数据,参数之间以&相连,如http://www.baidu.com/s?word=http&tn=sitehao123&ie=utf-8

POST方法是把提交的数据放在HTTP包的Body中,没有在URL中体现

由于get自己可以控制传输的数据,性能稍微好点,而post会提交form标签中所有的input标签中的数据。

具体参考网页提交方式post,到底post了些什么?

2传输的数据多少不同

GET的传输方式是通过url,但由于浏览器对url的限制,导致 GET传输的数据很有限,最好不好超过1024个字符。

POST的传输方式没有限制

3传输数据的安全性不同

GET的传输方式是通过url,传输的数据都显示在url中,可以很清楚的看到传输的数据,可能导致安全问题

POST的传输方式就相对安全很多

4后台获取数据的方式不同

在asp.net中,get的后台的获取方式为Request.QueryString,post的获取方式为Request.Form

 

知道了区别就容易区分在什么情况下该使用get,post

一般来说,后台是简单的查询时,而且安全性要求不高时,可以使用get,例如用户登录,就不应该使用get

后台是更新插入操作应该使用post,当然在数据量很小时,如果对安全性要求也不高时也可以使用get

在传递的参数很明确时,可以使用get,毕竟传输的数据量很小,相反如果传递的参数数量经常变动,建议使用post,当然了数据很大时也只能选择post。

标签