HTTP 指南

此页面列出了 HTTP 指南。它们旨在帮助您了解使用 HTTP 协议可以实现哪些功能。

一个典型的 HTTP 会话

在客户端-服务器协议(如 HTTP)中,会话包含三个阶段

使用用户代理字符串 (UA sniffing) 进行浏览器检测

浏览器在每次向服务器发送请求时,都会包含一个 User-Agent HTTP 标头,其值称为用户代理 (UA) 字符串。此字符串旨在标识浏览器、其版本号及其主机操作系统。

压缩字典传输

压缩字典传输是一种利用共享压缩字典来显著减小 HTTP 响应传输大小的方法。

HTTP 中的压缩

压缩是提高网站性能的重要方法。对于某些文档,大小减少高达 70% 可以降低带宽容量需求。多年来,算法也变得更加高效,并且客户端和服务器都支持新的算法。

HTTP/1.x 中的连接管理

连接管理是 HTTP 中的一个关键主题:打开和维护连接在很大程度上影响着网站和 Web 应用程序的性能。在 HTTP/1.x 中,有几种模型:短寿命连接持久连接HTTP 流水线

内容协商

HTTP 中,内容协商是一种机制,用于向同一 URI 提供资源的各种表示形式,以帮助用户代理指定哪种表示形式最适合用户(例如,哪种文档语言、哪种图像格式或哪种内容编码)。

内容安全策略(CSP)

内容安全策略 (CSP) 是一项功能,有助于预防或最大限度地降低某些类型的安全威胁的风险。它包含网站向浏览器发出的一系列指令,这些指令指示浏览器对构成网站的代码所允许执行的操作施加限制。

跨源资源策略(CORP)

跨域资源策略是由 Cross-Origin-Resource-Policy HTTP 标头设置的策略,它允许网站和应用程序选择防止来自其他来源的某些请求(例如使用 <script><img> 等元素发出的请求),以缓解推测性侧信道攻击,例如 Spectre,以及跨站脚本注入攻击。CORP 是在默认同源策略之外的额外保护层。

跨源资源共享(CORS)

跨域资源共享 (CORS) 是一种基于 HTTP 标头的机制,它允许服务器指示浏览器应允许从其自身以外的任何来源(域、方案或端口)加载资源。CORS 还依赖于一种机制,浏览器通过该机制向托管跨域资源的服务器发出“预检”请求,以检查服务器是否将允许实际请求。在该预检中,浏览器发送指示 HTTP 方法和将在实际请求中使用的标头。

HTTP 的演变

HTTP(超文本传输协议)是万维网的底层协议。HTTP 由蒂姆·伯纳斯-李和他的团队在 1989 年至 1991 年间开发,经历了许多变化,这些变化有助于保持其简洁性,同时塑造了其灵活性。继续阅读以了解 HTTP 如何从一个旨在在半信任实验室环境中交换文件的协议演变为一个现代互联网迷宫,传输高分辨率图像和视频以及 3D 内容。

HTTP 身份验证

HTTP 为访问控制和身份验证提供了一个通用框架。此页面是 HTTP 身份验证框架的介绍,并展示了如何使用 HTTP “Basic” 方案限制对服务器的访问。

HTTP 缓存

HTTP 缓存存储与请求关联的响应,并对后续请求重用存储的响应。

HTTP 客户端提示

客户端提示是一组 HTTP 请求头字段,服务器可以主动向客户端请求,以获取有关设备、网络、用户和用户代理特定偏好的信息。服务器可以根据客户端选择提供的信息来确定发送哪些资源。

HTTP 条件请求

HTTP 有一个条件请求的概念,其中请求的结果甚至成功都可以通过将受影响的资源与验证器进行比较来控制。这些请求对于验证缓存内容很有用,确保仅当它与浏览器已有的副本不同时才获取它。条件请求对于在恢复下载时确保文档的完整性,或在服务器上上传或修改文档时防止丢失更新也很有用。

HTTP 消息

HTTP 消息是在 HTTP 协议中服务器和客户端之间交换数据的机制。有两种类型的消息:客户端发送的请求以触发服务器上的操作,以及服务器响应请求发送的响应

HTTP 范围请求

HTTP Range 请求要求服务器将资源的某些部分发送回客户端。范围请求对各种客户端很有用,包括支持随机访问的媒体播放器、只需要大文件一部分的数据工具以及允许用户暂停和恢复下载的下载管理器。

媒体类型 (MIME 类型)

媒体类型(以前称为多用途互联网邮件扩展或 MIME 类型)指示文档、文件或字节集合的性质和格式。MIME 类型在 IETF 的 6838 中定义和标准化。

网络错误日志 (NEL)

网络错误日志是通过 NEL HTTP 响应头 配置的机制。此实验性标头允许网站和应用程序选择接收来自支持浏览器的失败(如果需要,也可以是成功的)网络获取报告。

HTTP 概述

HTTP 是一种用于获取 HTML 文档等资源的协议。它是 Web 上任何数据交换的基础,它是一种客户端-服务器协议,这意味着请求由接收方(通常是 Web 浏览器)发起。一个完整的文档通常由文本内容、布局指令、图像、视频、脚本等资源构成。

权限策略

权限策略为 Web 开发人员提供了明确声明网站上可以使用和不能使用哪些功能的机制。您定义了一组“策略”,限制网站代码可以访问哪些 API 或修改浏览器对某些功能的默认行为。这允许您强制执行最佳实践,即使代码库不断发展——以及更安全地组合第三方内容。

协议升级机制

HTTP/1.1 协议提供了一种特殊机制,可以使用 Upgrade 标头字段将已建立的连接升级到不同的协议。

代理服务器和隧道

在互联网的不同网络中导航时,代理服务器和 HTTP 隧道有助于访问万维网上的内容。代理可以位于用户的本地计算机上,也可以位于用户的计算机和互联网上目标服务器之间的任何位置。此页面概述了代理的一些基本知识,并介绍了一些配置选项。

HTTP 中的重定向

URL 重定向,也称为URL 转发,是一种为页面、表单、整个网站或 Web 应用程序提供多个 URL 地址的技术。HTTP 有一种特殊类型的响应,称为 HTTP 重定向,用于此操作。

使用 HTTP Cookie

Cookie(也称为 Web cookie 或浏览器 cookie)是服务器发送给用户 Web 浏览器的一小段数据。浏览器可以存储 cookie、创建新 cookie、修改现有 cookie,并在后续请求中将其发送回同一服务器。Cookie 使 Web 应用程序能够存储有限数量的数据并记住状态信息;默认情况下,HTTP 协议是无状态的