doGet和doPost区别

 我来答
DoramiHe
2023-04-17 · 知道合伙人互联网行家
DoramiHe
知道合伙人互联网行家
采纳数:25332 获赞数:59541
2011年中山职业技术学院毕业,现担任毅衣公司京东小二

向TA提问 私信TA
展开全部

Servlet中doGet与doPost的区别:

doGet和doPost其实就是用来接收前端传过来的数据,本质上都是请求方法。因为servlet的请求类型有get和post两种类型。get调用,一般用于获取服务器信息,并将其作为响应返回给客户端。即当经由web浏览器、HTML、JSP直接访问servlet的url时,调用;post用于把客户端数据传送到服务器端,但也有不好的地方。

当服务器创建servlet对象后,servlet对象调用init方法初始化自己。以后每当服务器接收到一个servlet请求时,都会调用产生一个新线程,在这个新线程中,servlet对象调用service对象对HTTP请求类型进行检查,判断出请求类型是get还是post,在service方法中,根据请求类型对应的调用doGet、doPost方法。

1、get请求,页面传输的信息会以键值对的形式,显示在地址栏中的url后面达到传送目的的。

2、post请求,是根据http请求的附件 传送的。在地址栏没有明文显示。

3、get请求对提交的数据有大小的限制,通常在1024字节左右。不用来提交大数据。

4、post请求对提交的数据大小没有限制。

一般servlet都是默认用get方式接受前端数据,因为get请求类型可以很方便的控制链接的目标地址。

青苹果FJ
2022-03-02 · TA获得超过2155个赞
知道大有可为答主
回答量:1.2万
采纳率:25%
帮助的人:361万
展开全部
1、传输速度上的差别:doget传输速度高于dopost传输速度。
2、传输数据上的差别:doget1、3k多余的传输数据部分会被截取,dopost传输数据不会被截取。
3、安全性上的差别:通过doGet方式提交的数据安全性低,通过doGet方式提交的数据安全性高。
doGet是处理客户端发来的Get请求,doPost是处理客户端发来的Post请求,它们的区别可以从以下几个方面来说明:
1、客户端(一般指浏览器)生成的方式
get:form中method属性为get时;或者直接在URL地址栏中输入URL,需要传递参数时,直接在URL后面拼接“?name=张三&age=18”这样的查询参数字符串
post:form中method属性为post。
2、客户端数据传送方式
get:表单数据存放在URL地址后面。所有get方式提交时HTTP中没有消息体;
post:表单数据存放在HTTP协议的消息体中以实体的方式传送到服务器。
3、服务器获取数据方式
get:服务器采用Servlet中的doGet来获取变量的值;
post:服务器采用Servlet中的doPost来获取数据。
4、传输的数据量
get:数据量长度有限制,一般不超过2kb。因为是参数传递,且在地址栏中,故数据量有限制;
post:适合大规模的数据传送。因为是以实体的方式传送的。
5、安全性
get:安全性差。因为是直接将数据显示在地址栏中,浏览器有缓冲,可记录用户信息。所以安全性低;
post:安全性高。因为post方式提交数据时是采用的HTTPpost机制,是将表单中的字段与值放置在HTTPHEADER内一起传送到ACTION所指的URL中,用户是看不见的。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
127grf
2023-04-23
知道答主
回答量:13
采纳率:0%
帮助的人:2744
展开全部
1、传输速度上的差别:doget传输速度高于dopost传输速度。
2、传输数据上的差别:doget1、3k多余的传输数据部分会被截取,dopost传输数据不会被截取。
3、安全性上的差别:通过doGet方式提交的数据安全性低,通过doGet方式提交的数据安全性高。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式