黑马程序员技术交流社区

标题: post和get请求的区别是什么 [打印本页]

作者: 朱君    时间: 2013-3-12 11:30
标题: post和get请求的区别是什么
post和get请求的区别是什么
作者: 张卫刚    时间: 2013-3-12 11:42
FORM中的get post方法区别Form中的get和post方法,在数据传输过程中分别对应了HTTP协议中的GET和POST方法。
区别如下:
Get是用来从服务器上获得数据,而Post是用来向服务器上传递数据。
Get将表单中数据的按照variable=value的形式,添加到action所指向的URL后面,并且两者使用“?”连接,而各个变量之间使用 “&”连接;Post是将表单中的数据放在form的数据体中,按照变量和值相对应的方式,传递到action所指向URL。
Get是不安全的,因为在传输过程,数据被放在请求的URL中,而如今现有的很多服务器、代理服务器或者用户代理都会将请求URL记录到日志文件中,然后 放在某个地方,这样就可能会有一些隐私的信息被第三方看到。另外,用户也可以在浏览器上直接看到提交的数据,一些系统内部消息将会一同显示在用户面前。 Post的所有操作对用户来说都是不可见的。
Get传输的数据量小,这主要是因为受URL长度限制;而Post可以传输大量的数据,所以在上传文件只能使用Post(当然还有一个原因,将在后面的提到)。
Get限制Form表单的数据集的值必须为ASCII字符;而Post支持整个ISO10646字符集。
Get是Form的默认方法。
作者: 曾钦    时间: 2013-3-12 11:59
- -  额,哥们来混技术分的么。。百度一大堆。
区别:
1.get请求参数会在url后面显示出来,且传送数据大小有限比post小好多。
2.get方式传递参数,参数用于拼接sql语句的话,如果代码不严谨,可能会被SQL注入。。后果非常严重。。
3.post方式,数据放置在HTML HEADER内提交

详情见百度吧。。
作者: 437857487    时间: 2013-3-12 21:34
GET请求会将请求的参数显示到地址栏上,形成例如xxx.aspx?id=1&name=myname这样的URL字符串而POST方式则不会将其显示
get会将提交的内容显示在地址栏上,而且地址栏内容长度不能超过1024,post方式相对安全一些
作者: 王洪宇    时间: 2013-3-15 20:33
表单的提交方式默认为get,你需要在Servlet  的doGet()方法中取得表单信息,表单信息会显示在地址栏,安全性不高,提交信息量小于1Kb;
反之,用post方式提交的数据,需要在doPost()方法中获取表单信息,表单信息不会显示在地址栏。

在doGet()方法中调用doPost()方法,获取参数的过程在doPost()方法中进行即可,反之亦可。
作者: luohan    时间: 2013-3-22 09:35
系统默认的是get,一般只是网页的跳转可以用get,但是要涉及到一些数据的跳转还是用post,主要的问题就是安全上,get跳转能够在地址栏上?name=&sex=.显示出来,不是很安全,在severlet中有doGet(),doPost()方法和他们对应




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2