HTTP简介
HTTP:HyperText Transfer Protocol 即“超文本传输协议”,现版本为HTTP 1.1
HTTP是由客户端发起请求,服务端响应,若是没有客户端的请求,服务端也不会自动响应
HTTP通信实际上是由TCP/IP负责,所以每次通信都需经过“三次握手、四次分手”,如果多次进行通信,将会耗费大量的资源,所以在HTTP 1.1版本中实现了持久连接,只要一建立连接就会一次性将所有资源下载,避免将时间浪费在连接上
HTTP是无状态的协议,不会记录用户曾经的记录,所以为了实现有状态而又不破坏HTTP本身的快捷,所以有了一个叫做Cookie的东西来帮助实现,客户端第一次请求服务器时不会带有Cookie,服务器响应时在响应头中加上set-cookie,客户端将保存这个cookie,客户端第二次请求时就会带上这个cookie,服务器就知道是谁在请求了
HTTP常用方法
GET:获取资源
POST:传输实体主体,与GET很像,但其主要目的不是获取资源
PUT:传输文件,自身不带验证机制
HEAD:获取报文首部,和GET方法一样,只是不返回报文主体部分,用于确认URI的有效性及资源更新的时间等
DELETE:删除文件,与PUT方法相反,用于删除指定的资源文件
OPTIONS:询问支持的方法,用来查询针对请求URI指定的资源支持的方法
TRACE:追踪路径,可查询发送出去的请求是怎样被加工修改/篡改的
CONNECT:要求用隧道协议连接代理,在与代理服务器通信时建立隧道,实现用隧道协议进行TCP通信,主要用SSL和TLS协议
LINK和UNLINK:在1.0版本中存在,1.1版本取消
*:PUT和DELETE本身不带验证机制,所以一般网站不用