java get 和post_[Java教程]get和post方法的区别
[Java教程]get和post方法的区别
0 2013-12-12 21:02:20
在form表单提交数据的过程中,method属性提供了两个值:get,post,默认为get方式[参1]
即一种为get提交,一种是post提交。那么这两种提交方式有什么不同呢?
查询了一些资料后,总结如下:
1.本质
Get是向服务器发索取数据的一种请求,而Post是向服务器提交数据的一种请求
2.服务器端获取值的方法
get方式提交的数据,服务器端使用request.QueryString获取变量的值
post方式提交的数据,服务器端使用request.Form获取数据
3.安全性
get方式安全性低,post方式较安全。但是post方式执行效率要比get方式差一些。
4.机制
get是把参数数据队列加到提交表单的action属性所指的URL中,如:http://www.xxx.com?sessonid=db23434&name=hongten&age=20。在URl中,值和表单南日各个字段一一对应,并且这些在URl中对用户来说是可见的,即用户时可以看到的。如:name=hongten。
post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到action属性所指的URL地址,对于用户来说,这是透明的。
5.大小
URL不存在参数上限的问题,HTTP协议规范没有对URL长度进行限制。这个限制是特定的浏览器及服务器对它的限制。IE对URL长度的限制是2083字节(2K+35)。对于其他浏览器,如Netscape、FireFox等,理论上没有长度限制,其限制取决于操作系统的支持。
理论上讲,POST是没有大小限制的,HTTP协议规范也没有进行大小限制,说“POST数据量存在80K/100K的大小限制”是不准确的,POST数据是没有限制的,起限制作用的是服务器的处理程序的处理能力。
对于ASP程序,Request对象处理每个表单域时存在100K的数据长度限制。但如果使用Request.BinaryRead则没有这个限制。
由这个延伸出去,对于IIS 6.0,微软出于安全考虑,加大了限制。我们还需要注意:
1).IIS 6.0默认ASP POST数据量最大为200KB,每个表单域限制是100KB。
2).IIS 6.0默认上传文件的最大大小是4MB。
3).IIS 6.0默认最大请求头是16KB。
IIS 6.0之前没有这些限制。[参2]
总结:
one:get方式的安全性较post方式要差一些,所以,包含一些重要的信息的话,简易使用post数据提交方式
two:在做查询统计的时候,使用get方式要更好一些;而在做数据的添加,修改或删除操作时,建议使用post数据提交方式
参考:
1.Hypertext Transfer Protocol--HTTP/1.1
2.IIS 6.0 Troubleshooting
更多信息:
浅谈HTTP中Get与Post的区别
两个长度限制问题的分析(来源于项目)
本文网址:http://www.shaoqun.com/a/78274.html
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:admin@shaoqun.com。
post
0
java get 和post_[Java教程]get和post方法的区别相关推荐
- java sendredirect报错_java 中sendredirect()和forward()方法的区别
HttpServletResponse.sendRedirect与RequestDispatcher.forward方法都可以实现获取相应URL资源. sendRedirect实现请求重定向,forw ...
- java数据成员_Java基础教程之对象的方法与数据成员
在Java基础教程之从Hello World到面向对象一文中,我们初步了解了对象(object).对象中的数据成员表示对象的状态.对象可以执行方法,表示特定的动作. 此外,我们还了解了类(class) ...
- java.nio.ByteBuffer中flip、rewind、clear方法的区别
对缓冲区的读写操作首先要知道缓冲区的下限.上限和当前位置.下面这些变量的值对Buffer类中的某些操作有着至关重要的作用: limit:所有对Buffer读写操作都会以limit变量的值作为上限. p ...
- [转] java.nio.ByteBuffer中flip、rewind、clear方法的区别
转载 对缓冲区的读写操作首先要知道缓冲区的下限.上限和当前位置.下面这些变量的值对Buffer类中的某些操作有着至关重要的作用: limit:所有对Buffer读写操作都会以limit变量的值作为上限 ...
- java——Scanner中nextLine()方法和next()方法的区别
遇到一个有意思的东西,在整理字符串这块知识的时候,发现我在用Scanner函数时,在字符串中加入空格,结果空格后面的东西没有输出来(/尴尬),不多说直接上代码: import java.util.Sc ...
- jsp与java的关系_jsp教程中:jsp与servlet的区别和关系
jsp教程上:我们一定学了servlet,也学习了jsp,那么jsp与servlet的区别是什么呢,jsp与servlet又有什么关系呢?下面我们先创建一个demo.jsp的页面,然后tomcat运行 ...
- Java培训教程:”==“和 equals 方法究竟有什么区别?
在学习java技术过程中,我们会接触到一些变量值的相关知识,本期小编为大家介绍的教程就是关于"=="和 equals 方法究竟有什么区别?来看看下面的详细介绍. Java培训教程: ...
- appium java类库下载,appium 简明教程 (4)——appium client 的安装
appium client 是对 webdriver 原生 api 的一些扩展和封装.它可以帮助我们更容易的写出用例,写出更好懂的用例. appium client 是配合原生的 webdriver ...
- Java继承Exception自定义异常类教程以及Javaweb中用Filter拦截并处理异常
Java继承Exception自定义异常类教程以及Javaweb中用Filter拦截并处理异常 参考文章: (1)Java继承Exception自定义异常类教程以及Javaweb中用Filter拦截并 ...
- 面试时,当你有权提问时,别客气,这是个逆转的好机会(内容摘自Java Web轻量级开发面试教程)...
前些天,我在博客园里写了篇文章,如何在面试中介绍自己的项目经验,收获了2千多个点击,这无疑鼓舞了我继续分享的热情,今天我来分享另外一个面试中的甚至可以帮助大家逆转的技巧,本文来是从 java web轻 ...
最新文章
- IE下的优秀js调试工具Companion.JS
- Mac NIFI 安装
- Tenka1 Programmer Contest C - Align
- 多线程实现的4中方法
- 3D数学之四元组应用及实现
- 原生js更改html,原生js更改css样式的两种方式
- 《Spring Data实战》——2.2 定义查询方法
- .Net WebApi接口之Swagger集成详解
- HTMLCSS入门学习
- tensorflow keras 搭建相机位姿估计网络--例
- 内网部署GPS定位系统方案
- 常用的四个电路分析方法
- 项目管理 : 需求管理的6个流程
- 详解Linux与Unix系统的区别与联系
- GB28181实现对安防摄像头的直播回放控制
- 37岁被裁,但毫无遗憾:小镇出身,一穷二白,完整吃过互联网+房地产红利,现在上海有千万房产!...
- 基于MATLAB的模拟信号AM、FM等调制与解调
- Linux下查看CPU、内存、磁盘使用情况,并计算其使用率
- linux邮件thunderbird,在 Linux 中安装新版的Thunderbird 邮件客户端
- 解决IDEA占用C盘空间过大的问题
热门文章
- Ubuntu12.04中如何让命令行路径变短
- Educational Codeforces Round 45 (Rated for Div. 2)
- 【solr基础教程之中的一个】Solr相关知识点串讲
- Unity3d 调用C++写的DLL
- nginx + tomcat配置负载均衡
- 用三方做的豆瓣电影页面
- ASP.NET MVC实现网站验证码功能
- 母版页的优点,及母版页与内容页中相互访问方法
- jQuery ctrl+Enter shift+Enter
- [学习日记] 文件读写 FileStream