http学习笔记(二) HTTP协议了解

该篇文章主要是对HTTP协议进行简单介绍,HTTP协议规定,请求从客户端发出,最后服务器端响应该请求并返回。Http是一种不保存状态即无状态协议。HTTP协议自身不对请求和响应之间的通信状态进行保存,即对于发送过的请求或响应都不做持久化处理,自身不具备保存之前发送过的请求或响应的功能。为了期望保持状态功能,引入了Cookie技术。

请求报文结构
请求报文是由请求方法、请求URI、协议版本、可选的请求首部字段和内容实体构成的。
请求报文结构
响应报文结构
响应报文基本上由协议版本、状态码、用以解释状态码的原因短语、可选的响应首部字段以及实体主体构成。
响应报文结构
HTTP方法
HTTP/1.1可使用的方法:
方法名 目的 说明
GET 获取资源 用来请求访问已被URI识别的资源
POST 传输实体主体 POST的主要目的并不是获取响应的主体内容
PUT 传输文件 HTTP/1.1的PUT方法自身不带验证机制,存在安全问题
HEAD 获取报文首部 和GET方法一样,只是不返回报文主体部分
DELETE 删除文件 与PUT相反的方法,一样不安全
OPTIONS 询问支持的方法 用来查询针对请求URI指定的资源支持的方法
TRACE 追踪路径 让web服务器端将之前的请求通信环回给客户端的方法 ,该方法不常用,容易引发XST(Cross-Site Tracing,跨站追踪),攻击
CONNECT 要求用隧道协议链接代理
这里写图片描述
持久链接
只要任意一端没有明确提出断开链接,则保持TCP链接状态,好处在于减少了TCP链接的重复建立和断开所造成的额外开销,减轻了服务器端的负载。
管线化
管线化技术出现后,不用等待响应亦可直接发送下一个请求。这样就能够做到同时并行发送多个请求,而不需要一个接一个地等待响应了。
Cookie状态管理
Cookie技术通过在请求和响应报文中写入Cookie信息来控制客户端的状态。
Cookie会根据从服务器端发送的响应报文内的一个叫做Set-Cookie的首部字段信息,通知客户端保存Cookie。当下次客户端再往该服务器发送请求时,客户端会自动在请求报文中加入Cookie值后发送出去。

猜你喜欢

转载自blog.csdn.net/dulei17816/article/details/80523433