HTTP请求方法

原创 2016年08月30日 12:04:22

TTP请求方法并不是只有GET和POST,只是最常用的。通常有以下8种方法:OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE和CONNECT。

GET

   主要用于向指定的URL请求资源,可以带参数也可以不带参数。带参数时,参数是明文传递,在浏览器的地址栏中可以看到参数名及参数值。
   get安全性不高,所以常应用于安全性要求低的场合,比如登录后请求数据。

经常使用GET提交方法,因为通过GET来提交表单没有任何负面影响并且是幂等的。(HTTP GET方法用于获取资源,不应有副作用,所以是幂等的。它不会改变资源的状态,不论调用一次还是N次都没有副作用,虽然获得的结果是不同的)
Http Get方法提交的数据大小长度并没有限制,HTTP协议规范没有对URL长度进行限制。这个限制是特定的浏览器及服务器对它的限制。最小的是IE浏览器,它对URL的最大限制为2083个字符。

POST

主要是向指定的URL(URI)提交数据, 通常用于表单发送,psot所传递的数据或参数不是已明文形式存在的,而是封装后的。
因此相对安全系数高,像注册、登录、提交表单都是用该方法实现的。

理论上讲,POST是没有大小限制的。HTTP协议规范也没有进行大小限制,起限制作用的是服务器的处理程序的处理能力。
Tomcat下默认POST大小的限制为2M。

PUT

put功能跟post相似,主要区别在于put方法是幂等方法, post非幂等方法。
如果让一个不是幂等的服务可以用幂等的方法访问,那么服务器的状态可能就会被该幂等的服务所修改。

DELETE

与PUT方法对应的DELETE方法。一个DELETE请求将需要从Web服务器删除的内容指定为请求行中的资源部分。

返回的状态
1. 200:表示删除请求被成功执行,返回被删除的资源
2. 202:表示删除请求被接受,但还没有被执行
3. 204:表示删除请求被执行,但没有返回被删除的资源

HEAD方法允许客户端仅向服务器请求某个资源的响应头,而不要真正的下载该资源本身。
服务器返回的响应头应该和客户端使用GET方法请求该资源时返回的请求头相同。
比起GET方法,只是省略了响应体。这种方法可以用来获取请求中隐含的元信息,而不用传输实体本身。

因为一个HEAD请求的响应可被缓存,响应中的信息可能用来更新之前缓存的实体。如果当前实体跟缓存实体的阈值不同(可通过Content-Length、Content-MD5、ETag或Last-Modified的变化来表明),那么这个缓存就被视为过期了。所以head方法的主要作用:
1、只请求资源的首部;
2、检查超链接的有效性;
3、检查网页是否被修改;
4、多用于自动搜索机器人获取网页的标志信息,获取rss种子信息,或者传递安全认证信息等。

OPTIONS

options方法是用于请求获得由Request-URI标识的资源在请求/响应的通信过程中可以使用的功能选项。

主要用于
1. 获取服务器支持的HTTP请求方法;也是黑客经常使用的方法。
2. 用来检查服务器的性能。例如:AJAX进行跨域请求时的预检,需要向另外一个域名的资源发送一个HTTP OPTIONS请求头,用以判断实际发送的请求是否安全。
3. 也可以利用向web服务器发送‘*’的请求来测试服务器的功能性。

TRACE

trace是让我们的web服务器端将客户端的所有请求信息返回给客户端的方法,该方法多见于debug的需求

CONNECT

CONNECT这个方法的作用就是把服务器作为跳板,让服务器代替用户去访问其它网页,之后把数据原原本本的返回给用户。
这样用户就可以访问到一些只有服务器上才能访问到的网站了,这就是HTTP代理。

要是使用CONNECT方法,首先要让服务器监听一个端口来接收CONNECT方法的请求。在服务器监听了端口以后就是客户端的请求,我们必须告诉代理服务器我们想要访问哪个Internet服务器。假如我想通过代理某个ip,我就需要建立一个TCP连接,连接到服务器监听的那个端口,然后给服务器发送一个HTTP头。

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/liyichunECNU/article/details/52368055

HTTP请求的8中方法浅析

来吧,之前想要总结这个问题来着,因为我个人也觉着挺重要的,但是总是被其他的内容给耽搁,遇到闭包了,我会想着先弄懂闭包吧,遇到DOM事件的问题了,会想着先弄明白DOM事件吧,所以 HTTP请求的方法就总...
  • XIAOZHUXMEN
  • XIAOZHUXMEN
  • 2016-08-01 11:12:19
  • 2511

http 几种请求方法的差别

HTTP协议是一个广泛应用的Internet协议。在其中有8个不同的请求方法: GETPOSTHEADPUTDELETEOPTIONSTRACECONNECT 这8个方法中GET和POST...
  • resilient
  • resilient
  • 2016-09-19 14:45:22
  • 8511

HTTP请求方法及幂等性探究

一、HTTP请求方法 根据HTTP标准,HTTP请求可以使用多种请求方式。 GET POST HEAD OPTIONS PUT PATCH DELETE TRACE CONNECT。 ...
  • qq_15037231
  • qq_15037231
  • 2017-09-21 14:41:06
  • 748

HTTP请求方法 之 HEAD

http://blog.sina.com.cn/s/blog_6bdc4c220100tdeb.html HTTP请求方法并不是只有GET和POST,只是最常用的。据RFC2...
  • loongwong2011
  • loongwong2011
  • 2016-09-23 11:11:44
  • 1935

两种 HTTP 请求方法:GET 和 POST

DD
  • u014612859
  • u014612859
  • 2014-04-23 18:31:00
  • 2359

HTTP协议支持的6种请求方式

标准Http协议支持六种请求方法,即:     0,GET   1,HEAD   2,PUT   3,DELETE   4,POST   5,OPTIONS   但其实我们大部分情况下只用到了GET和...
  • Perfectao
  • Perfectao
  • 2016-08-14 09:23:55
  • 3839

HTTP请求OPTION

HTTP请求方法并不是只有GET和POST,只是最常用的。据RFC2616标准(现行的HTTP/1.1)得知,通常有以下8种方法:OPTIONS、GET、HEAD、POST、PUT、DELETE、TR...
  • u010486679
  • u010486679
  • 2018-01-08 14:51:50
  • 213

Http/1.1 八种请求资源的方法

分享博客:http://blog.sina.com.cn/s/blog_5357c0af0100sbjd.html 1. POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包...
  • musuny
  • musuny
  • 2014-12-18 17:31:28
  • 1586

【学习】http的8种请求方式

HTTP/1.1协议中共定义了八种方法(有时也叫“动作”)来表明Request-URI指定的资源的不同操作方式。     OPTIONS 返回服务器针对特定资源所支持的HTTP请求方法。也可以利...
  • ahaaaaa
  • ahaaaaa
  • 2016-04-05 11:53:19
  • 10397

Http网络请求

  • 2015年11月19日 17:22
  • 1.27MB
  • 下载
收藏助手
不良信息举报
您举报文章:HTTP请求方法
举报原因:
原因补充:

(最多只允许输入30个字)