2019-01-20 常见的HTTP请求方法

以下均为HTTP/1.1标准方法。

GET

GET方法用于获取请求页面的指定信息。

如果请求资源为动态脚本,则返回文本是web容器解析后的HTML源代码,而不是源文件。

使用GET请求时可以带上参数(如username=username,多个参数项以“&”分隔,如username=username&password=password),在服务器端脚本语言中可以选择性地接收这些参数。

HEAD

HEAD方法除了服务器不能在响应里返回消息主题外,其他都与GET方法相同。此方法经常被用来测试超文本链接的有效性、可访问性和最近的改变。攻击者编写扫描工具时,就常用此方法,因为只测试请求资源是否存在,而不用返回消息主体,所以速度一定是最快的。

POST

POST与GET类似,但最大的区别在于GET方法没有请求内容,而POST有。POST请求最多用于向服务器发送大量数据,GET虽然也可以发送数据,但是有大小的限制,并且GET请求会将发送的数据显示在服务器端,而POST不会,所以POST的安全性相对来说高一些。

PUT

PUT方法用于请求服务器把请求中的实体存储在请求资源下,如果请求资源已经在服务器中存在,那么将会用请求中的数据替换原先的数据。如果请求指定的资源不存在,则会创建这个资源,且数据位于请求正文。通常情况下,服务器都会关闭PUT方法,因为它会为服务器建立文件,属于危险的方法之一。

DELETE

DELETE方法用于请求源服务器删除请求的指定资源。服务器一般都会关闭此方法,因为客户端可以进行文件删除操作,属于危险方法之一。

TRACE

TRACE方法用于激发一个远程的应用层的请求消息回路。也就是说,回显服务器收到的请求。TRACE方法允许客户端去了解数据被请求链的另一端接收的情况,并且利用那些数据信息去测试或诊断。此方法非常少见。

CONNECT

HTTP 1.1协议规范保留了CONNECT方法,此方法是为了用于能动态切换到隧道的代理。

OPTIONS

OPTIONS方法是用于请求获得URI标识的资源在请求/响应的通信过程中可以使用的功能选项。通过这个方法,客户端可以在采取具体请求资源之前,决定对该资源采取何种必要措施,或者了解服务器的性能。简而言之,OPTIONS请求方法的主要用途有两个:获取服务器支持的HTTP请求方法和检查服务器的性能。

参考资料:《Web安全深度剖析》

你可能感兴趣的:(2019-01-20 常见的HTTP请求方法)