A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 朱君 中级黑马   /  2013-3-12 11:30  /  2912 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

post和get请求的区别是什么

5 个回复

倒序浏览
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的默认方法。
回复 使用道具 举报
- -  额,哥们来混技术分的么。。百度一大堆。
区别:
1.get请求参数会在url后面显示出来,且传送数据大小有限比post小好多。
2.get方式传递参数,参数用于拼接sql语句的话,如果代码不严谨,可能会被SQL注入。。后果非常严重。。
3.post方式,数据放置在HTML HEADER内提交

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

在doGet()方法中调用doPost()方法,获取参数的过程在doPost()方法中进行即可,反之亦可。
回复 使用道具 举报
系统默认的是get,一般只是网页的跳转可以用get,但是要涉及到一些数据的跳转还是用post,主要的问题就是安全上,get跳转能够在地址栏上?name=&sex=.显示出来,不是很安全,在severlet中有doGet(),doPost()方法和他们对应
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马