请求访问文本和图像等资源的一端成为客户端,而提供资源响应的一端成为服务器。
请求报文的构成:
方法 URI 协议版本 (请求首部字段)
请求实体
响应形式:
协议版本、状态码(表示请求成功或失败的数字代码)、用以解释状态码的原因短语、
可选的响应首部字段以及实体主体构成。
HTTP是一种不保存状态,即无状态协议。HTTP协议自身不对请求和响应之间的通信状态进行保存。
HTTP/1.1虽然是无状态协议,但是为了实现期望的保持状态功能,引入了cookie技术。有了cookie技术
就可以暂时管理状态了。
URI为完整的请求URI,在首部字段Host中写明网络域名或IP地址。
GET:获取资源 GET方法用来请求访问已被URI识别的资源。指定的资源经服务器端解析后返回响应内容,
也就是说,如果请求的资源是文本,那就是保持原样返回,如果是像CGI那样的程序,则返回经过执行后的输出结果。
POST:用来传输实体的主体
POST的主要目的并不是获取响应的主体内容
PUT:传输文件,要求在请求报文的主体中包含文件内容,然后保存到请求URL指定的位置。
HEAD:和GET差不多,只是不返回报文主体部分。用于确认URI的有效性及资源更新的日期时间
DELETE:delete按照指定URI删除指定的资源
OPTIONS:询问支持的方法
OPTIONS方法用来查询针对请求URI指定的资源支持方法
TRACE:是让WEB服务器端将之前的请求通信环给客户端的方法。
CONNECT:CONNECT方法要求在与代理通信时建立隧道,实现隧道协议进行tcp通信
使用方法下达命令:
向请求URI指定的资源发送请求报文时,称为方法的命令。
为了解决TCP的连接问题,加入了持久连接,持久连接的特点是:只要任意一端设有明确提出断开连接,则保持TCP连接状态
管线化:
持久连接使得多数请求以管线化方式发送成为可能。
从前发送请求后需要等待并受到响应,才能发送下一个请求,管线化技术出现后,不用等待响应就可以
发送下一个请求。
HTTP是无状态协议,它不对之前发生过的请求和响应的状态进行管理,也就是说,无法根据之前的状态进行本次的请求处理。
Cookie技术通过在请求和响应报文中写入Cookie信息来控制客户端的状态。