简单的HTTP协议
客户端向服务端发起请求,服务端进行响应,如果响应了,就说明请求执行了
HTTP是不保存状态的协议
协议本身不保留之前一切的请求或响应报文的信息
请求报文
GET(方法) /index.htm(URI) HTTP/1.1(协议版本)
Host:hackr.jp (请求字段首部)
name=hehe (内容实体)
响应报文
HTTP/1.1(协议版本) 200(状态码) OK(状态原因短语)
Date: Tue, 10 Jul 2012 03:50:15 GMT (时间)
Content-Length: 362
Content-Type: text/html (首部字段的属性)
(空一行)
。。。。 (实体主体)
方法
GET
获取资源
POST
传输实体主体
功能与GET很相似,但是主要目的不是获取响应的主体内容
put
传输文件
安全性问题,一般需要配合Web引用程序的验证机制
HEAD
获得报文首部
用来确认URI的有效性及资源更新的日期时间
DELETE
删除文件
与PUT类似,具有安全性问题
需要配合Web应用程序的验证机制
OPTIONS
询问支持的方法
TRACE
追踪路径
具体方法就是在首部字段中填入一个数,然后每次经过一个服务器端都会数字减一,刚好为零的是否,停止传输,最后返回200 OK
CONNECT
用隧道协议连接代理
持久连接
HTTP/1.0 版本是不持久连接
开TCP,HTTP请求响应,关TCP每次都要重复,增加通信量的开销
持久连接 HTTP/1.1
只要任意一端没有明确提出断开连接,保持TCP连接状态,HTTP还是无状态的
持久连接可以使得请求可以管线化方式发送,就是流水线一样发送,而不是等待一个响应完再发另外一个
cookie
用来处理HTTP无状态的问题
- 请求
- 在响应中添加cookie
- 请求中添加Cookie
- 对照Cookie,获得状态
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Echin の 博客!