`
929118967
  • 浏览: 21807 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
博客专栏
Fcebf22e-9505-38db-b3f2-65fdcc3fd6a5
java开发的深入浅出
浏览量:7126
文章分类
社区版块
存档分类
最新评论

浅谈HTTP中Get与Post的区别

 
阅读更多

Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GETPOSTPUTDELETEURL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GETPOSTPUTDELETE就对应着对这个资源的4个操作。GET一般用于获取/查询资源信息,而POST一般用于更新资源信息。

1.根据HTTP规范,GET用于信息获取,而且应该是安全的和幂等的

 (1).幂等的意味着对同一URL的多个请求应该返回同样的结果

2根据HTTP规范,POST表示可能修改变服务器上的资源的请求

注意:a..GET请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,参数之间以&相连,如:login.action?name=hyddd&password=idontknow&verify=%E4%BD%A0%E5%A5%BD。如果数据是英文字母/数字,原样发送,如果是空格,转换为+,如果是中文/其他字符,则直接把字符串用BASE64加密,得出如:%E4%BD%A0%E5%A5%BD,其中%XX中的XX为该符号以16进制表示的ASCII

  b.POST把提交的数据则放置在是HTTP包的包体中。

c.关于数据长度的限制:

  (1).首先是"GET方式提交的数据,这个限制是特定的浏览器及服务器对它的限制。IEURL长度的限制是2083字节(2K+35)。对于其他浏览器,如NetscapeFireFox等,理论上没有长度限制,其限制取决于操作系统的支持。

  (2).理论上讲,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

3.POST的安全性要比GET的安全性高。注意:这里所说的安全性和上面GET提到的安全不是同个概念。

  总结一下,Get是向服务器发索取数据的一种请求,而Post是向服务器提交数据的一种请求,在FORM(表单)中,Method默认为"GET",实质上,GETPOST只是发送机制不同,并不是一个取一个发!

分享到:
评论

相关推荐

    java web学习_浅谈request对象中get和post的差异

    Java Web 学习之 Request 对象中 GET 和 POST 的差异 摘要:本文将对 Java Web 中 Request 对象中 GET 和 POST 方法的差异进行分析和比较,通过代码示例和输出结果,展示 GET 和 POST 方法的不同之处,并分析其优...

    浅谈IOS中AFNetworking网络请求的get和post步骤

    在iOS开发中,AFNetworking是一个广泛使用的网络库,它提供了GET和POST等网络请求方法,使得网络编程变得简单。本文将详细阐述如何在iOS中利用AFNetworking进行GET和POST网络请求。 首先,为了引入AFNetworking库,...

    浅谈JS原生Ajax,GET和POST

    在本文中,我们将探讨如何使用原生JavaScript实现AJAX的GET和POST请求。 首先,让我们看看GET请求。GET请求常用于获取服务器上的资源,它是无状态且幂等的,意味着多次执行同一请求将产生相同的结果。在示例代码中...

    浅谈http协议和REST

    ### 浅谈HTTP协议与REST架构 #### HTTP协议概述 HTTP(Hypertext Transfer Protocol)是一种应用层协议,主要用于从Web服务器传输超文本文档至本地浏览器的传送协议。它采用客户端/服务器模式,通过TCP/IP进行通信...

    浅谈PHP表单提交(POST&GET&URL编/解码)

    POST方法不依赖于URL,不会将传递的参数值显示在地址栏中。另外,POST方法可以没有限制地传递数据到服务器,所有提交的信息在后台传输,用户在浏览器是看不到这一过程的,安全性高。 POST方法比较适合用于发送一个...

    浅谈Laravel POST,PUT,PATCH 路由的区别

    在Web开发中,HTTP方法用于客户端(如浏览器)和服务器之间的交互操作,最为熟知的是GET和POST方法。但在RESTful API设计中,POST, PUT, PATCH等方法都是经常使用的,而在Laravel框架中这些方法也得到了充分的应用和...

    浅谈CSRF攻击方式

    ### 浅谈CSRF攻击方式 #### 一、CSRF是什么? CSRF(Cross-Site Request Forgery,跨站请求伪造)是一种常见的网络攻击手段,它利用用户在浏览器中保存的有效凭证(如Cookie等),通过伪装成受害者的身份对目标...

    浅谈angular.js跨域post解决方案

    跨域,前端开发中经常遇到...$http.post(url, data, [config]).success(function(){ ... }); $http.get(url, [config]).success(function(){ ... }); $http.get(url, [config]).success(function(){ ... }); 一、$http

    浅谈绕过WAF的数种方法.txt

    **概述**:利用Request对象中的GET和POST方法进行特殊处理,从而绕过WAF的检测。 **技术细节**: - 在ASP和ASP.NET环境中,可以通过构造特殊的Request对象来绕过WAF。例如,在ASP中可以使用`("t") %>`来获取`t`参数...

    浅谈python3发送post请求参数为空的情况

    2. **POST请求与GET请求的区别**:虽然两者都可以用来发送数据,但POST请求更适合于发送大量的数据或者敏感数据,因为它不会将数据暴露在URL中。 3. **参数传递方式**:GET请求通常将参数附加在URL后面,而POST请求...

    浅谈python requests 的put, post 请求参数的问题

    ### 浅谈Python Requests 库中的PUT与POST请求参数处理 在进行Web开发或API测试时,经常会遇到需要向服务器发送数据的情况。Python作为一种广泛使用的编程语言,提供了强大的`requests`库来帮助开发者轻松实现HTTP...

    浅谈Express.js解析Post数据类型的正确姿势

    1、POST请求:HTTP/1.1 协议规定的 HTTP 请求方法有 OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE、CONNECT 这几种。其中 POST 一般用来向服务端提交数据。 2、 Content-Type : 是指 http/https 发送信息至服务器...

    浅谈PHP接收POST数据方式

    在PHP中,处理服务器接收客户端发送的POST数据是一个非常基础且常见的操作,尤其是当Web应用与用户进行交互时。本文将深入探讨PHP处理POST数据的三种不同方式,并通过实例来演示这些方式的应用。 首先,最常见的...

    浅谈jquery中ajax跨域提交的时候会有2次请求的问题

    我们平时在同域中请求页面什么的时候不会有这种情况,这种情况大多发生在移动端的跨域请求中发生的。 解决方法就是在服务端中加一层过滤HTTP请求的类型,把OPTION等不用的类型过滤掉。...以上这篇浅谈jquery中ajax跨

Global site tag (gtag.js) - Google Analytics