`
szh_java
  • 浏览: 77351 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Post和get的区别(详细总结篇)

    博客分类:
  • java
 
阅读更多
很多人都是模模糊糊的知道post和get的区别,到底有什么区别,具体的也说不清楚。根据自己的一点经验有在网上找了很多这方面的知识,总结如下:
1,post/get都是请求服务器,get是发送获取服务器数据的请求;post是发送传递数据的请求。
2,post/get的安全问题:
       1),get传输的数据是在URL里,post是封装在Form表单里。由于浏览器会缓存URL,如果URL里包含敏感数据,那么别的用户就可从历史记录里轻易的读取到这些数据。从这方面来分析get方法存在 严重的安全性问题。
       2),如果从数据传输的过程来分析说post比get安全,是错误的。因为post,get传输数据都是明文传送。用类似httpfox这样的插件都可以看到二者传送的明文数据。
       3),如果从操作动作来看说post比get安全更是严重的错误。因为恰恰相反,不单是字面意思,HTTP规范里,GET用于信息获取,而且应该是安全的和幂等的;POST表示可能修改变服务器上的资源的请求。get是通过指定的URL获取某个资源,是读取操作。不论get多少次被访问的资源的状态不会改变;post是对访问的资源追加数据,每次提交post参与的代码都会被认为这个操作会修改资 源的状态,于是按F5或者刷新页面时会弹出“是否确认重复提交的对话框”。例如:在论坛请求一个帖子的地址,无论刷新多少次,请求多少次都是得到的这个帖子的详细内容,而且帖子本身状态不会因为本次请求有发生任何改变。这样的操作是安全的幂等的。当对这个帖子发表评论时就应该使用post方法了,因为本次请求后资源的状态已经发生改变。
3,post/get请求数据的长度限制
   1),http协议没有对请求数据的长度做限制,也没有对url的长度做限制。实际开发应用中特定浏览器和服务器对URL长度有限制,例如IE对URL长度的限制是2083字节(2K+35)。对于其他浏览器,如Netscape、FireFox等,理论上没有长度限制,其限制取决于操作系统的支持。因为get方法传输数据是放在URL里面所以使用GET提交时,传输数据就会受到URL长度的限制。
   2),POST:由于不是通过URL传值,理论上数据不受限。但实际各个WEB服务器会规定对post提交数据大小进行限制,Apache、IIS6都有各自的配置。IIS4最大80k,IIS5最大100k。
分享到:
评论

相关推荐

    ajax请求get与post的区别总结

    本篇文章是对ajax请求get与post的区别进行了详细的总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助

    PHP通过get方法获得form表单数据方法总结

    那么本篇文章主要就给大家详细介绍其中的get方法即PHP通过get变量获取form表单数据的具体方法以及用处,后期文章中再继续给大家介绍post的具体用法作用。 下面给大家带来具体的代码示例: 1、form表单代码示例(表单...

    Ajax 入门之 GET 与 POST 的不同处详解

    在之前的随笔中,本着怀旧的态度总结了一篇 兼容不同浏览器 建立XHR对象的方法:  在建立好XHR对象之后,客户端需要做的就是,将数据以某种方式传递到服务器,以获得相应的响应,在...两种 HTTP 请求方法:GET 和 POST 在客

    Java基础知识点总结.docx

    详解区分请求类型: GET或POST 131 $.ajax标准写法 134 二十、 正则表达式:其实是用来操作字符串的一些规则★★★☆ 135 二十一、 设计模式★★★★★ 136 设计模式简介 136 单例设计模式:★★★★★ 156 工厂模式...

    .net C# 学习过程中收藏的一些比较有用的和感兴趣的链接

    http://wenku.baidu.com/view/3d2b01a93169a4517723a3f3.html Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结 http://zhuanlan.zhihu.com/FrontendMagazine/19854868 基于单个 Div 的 CSS 绘图 ...

    高性价比WIFI图传方案使用WEB配网发送get请求获取天气预报教程(免费版)-电路方案

    连上Internet之后,自然可以轻松地发送get请求,最后请求"心知天气"的服务器(如果想自己搭建私人服务器的话,请看我:ESP8266作为客户端发送get请求和post请求的电路方案设计(原理图+程序))返回北京的天气预报(如果...

    Python入门网络爬虫之精华版

    首先列举一下本人总结的相关文章,这些覆盖了入门网络爬虫需要的基本概念和技巧:宁哥的小站-网络爬虫 当我们在浏览器中输入一个url后回车,后台会发生什么?比如说你输入http://www.lining0806.com/,你就会看到宁...

    你品,你细品AJAX

    一篇文章带你入门AJAX概述异步和同步原生JS实现方式JQuery实现方式$.ajax$.get$.post 本文是本人自学前端时,简单入门时的一些总结,如有错误和更好的意见,欢迎大佬提出。 思维导图: 概述 ASynchronous ...

    Python爬虫实例_利用百度地图API批量获取城市所有的POI点

    上篇关于爬虫的文章,我们讲解了如何运用Python的requests及BeautifuiSoup模块来完成静态网页的爬取,总结过程,网页爬虫本质就两步: 1、设置请求参数(url,headers,cookies,post或get验证等)访问目标站点的...

    详解参数传递四种形式

    这篇文章是在日常的工作中总结出来的,下面把四种参数传递的形式展示给大家。 什么时候用GET, 查,删, 什么时候用POST,增,改 (特列:登陆用Post,因为不能让用户名和密码显示在URL上) 4种get传参方式 <...

    AngularJS中$http的交互问题

    这篇文章,主要是通过我们熟悉的jquery中ajax和jsonp的类型方式,总结一下$http的使用。 $http 是 AngularJS 中的一个核心服务,用于读取远程服务器的数据。 1. angular中的ajax 写法一: $http({ method: 'GET',...

    小程序开发,那些我们跳过的坑

    最近,微信小程序 扫码签到工具...1. Get和Post请求的返回数据不支持二进制流。 小程序支持通过post获取小程序码(有点像菊花)。尝试通过 wx.request 向微信服务器获取 小程序码 的图片,结果发现返回的结果无法

    Web安全深度剖析(张柄帅)

    《Web安全深度剖析》总结了当前流行的高危漏洞的形成原因、攻击手段及解决方案,并通过大量的示例代码复现漏洞原型,制作模拟环境,更好地帮助读者深入了解Web应用程序中存在的漏洞,防患于未然。 《Web安全深度剖析...

    亮剑.NET深入体验与实战精要2

    3.4.2 get与post方法的区别 146 3.4.3 ASP.NET服务器控件和 HTML控件的区别 146 3.4.4 Server.Transfer和Response.Redirect的区别 148 3.4.5 刷新页面的方法汇总 149 3.4.6 页面事件控制 150 3.4.7 在URL中传递中文...

    亮剑.NET深入体验与实战精要3

    3.4.2 get与post方法的区别 146 3.4.3 ASP.NET服务器控件和 HTML控件的区别 146 3.4.4 Server.Transfer和Response.Redirect的区别 148 3.4.5 刷新页面的方法汇总 149 3.4.6 页面事件控制 150 3.4.7 在URL中传递中文...

    XML轻松学习手册--XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解

    我想就我个人学习过程的心得和经验,写一篇比较全面的介绍文章。首先有两点是需要肯定的:  第一:XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解,等待只会让你失去机会;  ...

    IIS6.0 IIS,互联网信息服务

     第二篇 IIS之FTP服务器 一、建立你的FTP站点 第一个FTP站点(即“默认FTP站点”)的设置方法和更多FTP站点的建立方法请参照前文Web服务器中相关操作执行。需要注意的是,如果你要用一个IP地址对应多个不同的FTP...

Global site tag (gtag.js) - Google Analytics