HTTP请求方法详解

HTTP/1.1 定义的请求方法

请求方法说明
OPTIONS用于请求获得由URL标识的资源,在请求/响应的通信过程中可以使用的功能选项。通过这个方法,客户端可以在采取具体资源请求前,决定对该资源采取何种必要的措施,或者了解服务器的性能。
GET用于获取请求页面的指定消息(以实体的格式)。如果请求资源为动态脚本(除HTML),那么返回文本是web容器解析后的HTML源代码,而不是源文件。
POST与GET请求方法类似,但最大的区别就在于GET请求方法没有请求内容,而POST请求方法是有请求内容的。POST多用于向服务器发送大量数据。GET方法虽然也能发送数据,但是有大小(长度)的限制,并且GET方法会将发送的数据显示在浏览器端,而POST方法则不会,所以安全性相对更高,如上传文件、提交留言等,只要是向服务器传输大量的数据,通常会使用POST方法(登录也是POST方法)。
HEAD除服务器不能在响应里返回消息主体外,其他都与GET请求方法相同。他经常被用来测试超文本链接的有效性、可访问性和最近的改变。攻击者编写扫描工具时,就常用此方法,因为他只测试资源是否存在,而不是返回消息主体,所以处理的速度更快。
DELETE用于请求服务器删除请求的指定资源。服务器一般会关闭此方法,这是因为客户端可以进行删除文件的操作,属于危险方法。
TRACE被用于激发一个远程应用层的请求消息回路,即回显服务器收到的请求。他允许客户端了解数据被请求链的另一端接收的情况,并且利用这些数据信息进行测试或诊断,但此方法很少使用。
PUT用于将数据发送到服务器以创建或者更新资源,可以用上传的内容替换目标资源中的所有当前内容。它将包含的元素放在所提供的的URI(统一资源标识符)下,如果URI指示的是当前资源,则会被改变;如果URI未指示当前资源,则服务器可以使用该URI创建资源。属于危险方法,一旦开启,就会允许任意人员向服务器上传文件。
CONNECT用来建立给定的URI的服务器隧道。他通过简单的TCP/IP隧道更改请求连接,通常使用解码的HTTP代理来进行SSL编码的通信(HTTPS)。

除此之外还有七种请求方法

请求方法说明
PATCHHTTP的RFC 2616原本定义用于上传数据的方法只有POST和PUT,但是考虑到两者的不足,增加了该方法。它是对PUT方法的补充,用来对已知资源进行局部更新。
MOVE请求服务器将指定的页面移至另一个网络地址,属于危险方法。
COPY请求服务器将指定的页面复制至另一个网络地址,属于危险方法。
LINK请求服务器建立链接关系。
UNLINK断开链接关系。
WRAPPED允许客户端发送经过封装的请求。
Extension-method在不改动协议的前提下,可增加另外的方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值