HTTP学习笔记二
第二章 简单的http协议
1.HTTP协议用于客户端与服务器端之间的通信
请求访问文本或图像等资源的一端称为客户端,而提供资源响应的一端称为服务器端。
请求报文是由请求方法,请求URI,协议版本,可选的请求首部字段和内容实体构成的。
响应报文基本上由协议版本,状态码(表示请求成功或失败的数字代码),用以解释状态码的原因短语,可选的响应首部字段以及实体主体构成。
HTTP是不保存状态的协议,即无状态协议。协议对于发送过的请求或响应都不做持久化处理。
HTTP/1.1虽然是无状态协议,但是为了实现期望的保持状态功能,于是引入了Cookie技术。有了Cookie再用HTTP协议通信,就可以管理状态了。
2.HTTP协议使用URI定位互联网上的资源。正是因为URI的特定功能,在互联网上任意位置的资源都能访问到。
GET:获取资源。GET方法用来请求访问已被URI识别的资源。指定的资源经服务器端解析后返回响应内容。
POST:传输实体主体。POST的主要目的并不是获取响应的主体内容。
PUT:传输文件。
Head:获得报文首部。Head方法与get方法一样,只是不返回报文主体部分。用于确认URI的有效性及资源更新的日期时间等。
DELETE:删除文件。与PUT相反的方法。DELETE方法按请求URI删除指定的资源。
OPTIONS:询问支持的方法。用来查询针对请求URI指定的资源支持的方法。
TRACE:追踪路径。TRACE方法是让Web服务器端将之前的请求通信环回给客户端的方法。TRACE方法就是用来确认连接过程中发生的一系列操作。
CIONNECT:要求用隧道协议连接代理。CONNECT方法要求在与代理服务器通信时建立隧道,实现用隧道协议进行TCP通信。主要使用SSL(Secure Sockets Layer,安全套接层)和TLS(Transport Layer Security,传数层安全)协议把通信内容加密后经网络隧道传输。
3.向请求URI指定的资源发送请求报文时,采用称为方法的命令。
方法的作用在于,可以指定请求的资源按期望产生某种行为。方法中有GET,POST和HEAD等。
方法名区分大小写,注意要用大写字母。
4.持久连接节省通信量
HTTP协议的初始版本中,每进行一次HTTP通信就要断开一次TCP连接。每次请求都会造成无谓的TCP连接建立和断开,增加通信量的开销。
为了解决这个TCP的连接问题,HTTP/1.1和一部分的HTTP/1.0想出了持久连接(HTTP Persistent Connections,也称为HTTP keep-alive 或HTTP Connection reuse)的方法。
持久连接的特点是,只要任意一端没有明确提出断开连接,则保持TCP连接状态。
5.使用Cookie的状态管理
保留无状态协议这个特征的同时又要解决类似的矛盾问题,于是引入了Cookie技术。Cookie技术通过在请求和响应报文中写入Cookie信息来控制客户端的状态。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?