HTTP协议(二) | 青训营笔记

72 阅读3分钟

这是我参与「第三届青训营 -后端场」笔记创作活动的第2篇笔记

请求报文和响应报文的结构

image-20220412153106804

image-20220412153140174

协商技术

内容协商机制是指客户端和服务器端就响应的资源内容进行交涉,然 后提供给客户端最为适合的资源。内容协商会以响应资源的语言、字 符集、编码方式等作为判断的基准。

image-20220412160129586

状态码

image-20220503163539725

200: ok

204:No Content 请求处理成功,但是没有资源可返回

206:客户端请求一部分资源,服务端返回这部分资源成功

400:客户端请求语法错误

403:禁止访问

404:请求的资源不存在

502:网关错误

503:服务器超负荷或者正在停机维护无法处理请求

Get和Post区别

get是用来获取资源的,它只是获取、查询数据,不会修改服务器的数据

post可以向服务器发送修改请求、进行数据修改

get没有post安全,get请求时对url的长度是由限制的,post请求时,是写入body的

有些浏览器会把post分成两个数据包,先发送header再发送body,先发送header 让服务器进行校验,校验成功则发送body,失败则终止这样做避免浪费带宽传输实体

代理、网关、隧道

代理 代理是一种有转发功能的应用程序,它扮演了位于服务器和客户 端“中间人”的角色,接收由客户端发送的请求并转发给服务器,同时 也接收服务器返回的响应并转发给客户端。

代理好处:利用缓存技术,减少网络带宽的流量,组织内部对针对网站的访问控制

缓存代理:代理服务器会预先将源服务器的副本缓存在代理服务器上,

透明代理:不对报文进行任何加工的代理

网关 网关是转发其他服务器通信数据的服务器,接收从客户端发送来的请 求时,它就像自己拥有资源的源服务器一样对请求进行处理。有时客 户端可能都不会察觉,自己的通信目标是一个网关。

网关可以将http请求转变为其他协议的请求,网关的工作机制和代理十分相似,而网关能给通讯链路上的服务器提供非http协议服务,

可以在网关和客户端之间的通讯进行加密来提高通信的安全性

隧道 隧道是在相隔甚远的客户端和服务器两者之间进行中转,并保持双方 通信连接的应用程序。

使用 SSL等 加密手段进行通信。隧道的目的是确保客户端能与服务器进行安全的 通信。

隧道本身是透明的,客户端不用在意隧道的存在