HTTP基础 第二篇(未完待续)

折翼的小鸟先生 / 2023-07-30 / 原文

前言:由于天天学js有点太枯燥,所以同步更新点其他内容,大约在大半年前也更新过HTTP的博客,不过现在基

本忘光了,那就重头开始吧,这次参考数据更换成著名HTTP书籍,《HTTP权威指南》-----[美] David Gourley,

[美] Brian Totty,[美] Marjorie Sayer,[美] Sailu Reddy,[美] Anshu Aggarwal

1 HTTP概述

1.1 HTTP简介

HTTP是当前普遍使用的网络通信协议,通过HTTP,用户可以访问web服务器获得想要的信息,当我们浏览一个页

面时,浏览器会向服务器发送一条HTTP请求,服务器会去寻找期望的对象,如果成功,就将对象,对象类型,对

象长度以及其他信息放在HTTP响应中发送给客户端

1.2 资源

WEB服务器是web资源的宿主,web资源是web内容的源头,资源不一定是静态文件。可以是动态资源,根据身

份,所请求的信息,或每天不同时段来产生内容,总之所有类型的内容来源都是资源,英特网搜索引擎也是资源

1.2.1 媒体类型

由于网络上有数千种不同的数据类型,所以HTTP给不同类型的数据打上了MIME type (Multipurpose Internet

Mail Extension type)的数据格式标签,用来描述并标记多媒体内容web服务器为所有的HTTP对象数据附加MIME

类型,当web浏览器取回一个对象时,回去查看相关的MIME类型,检查是否处理该文件类型

MIME类型由主要的对象类型和特定的子类型构成,中间由一条斜杠来分割。

例如:

HTML格式的文本文档由text/html 类型来标记

ASCLL文本文档由text/plain类型来标记

JPEG格式的图片为image/jpeg类型

GIF格式的图片为image/gif类型

ppt格式由 application/vnd.ms-powerpoint

1.2.2 URI

每一个web服务器资源都有一个名字,服务器资源名字被称为统一资源标识符(Uniform Resource Identifier, URI)

URI在世界范围内唯一表示并定位信息资源

举个简单的uri例子:https://cdn.luogu.com.cn/upload/image_hosting/i7sfoci9.png这个uri就唯一指向了我先

前某个博客的一张图片,访问的网站服务器很明显,是洛谷的图床

我们以该链接为例子,分析以下该uri的组成

第一部分:: https:// 称作方案(scheme) ,说明了访问资源所使用的协议类型,当前表明使用HTTPS协议,是比

HTTP协议安全性更强的协议

第二部分:cdn.luogu.com.cn 给出服务器的因特尔网址,定位该资源服务器

第三部分:/upload/image_hosting/i7sfoci9.png 定位该图片位置

然后将此文件打赏MIME类型标记,标记数据类型和大小,然后将其传给客户端

URI由两种形式,分别是URL和URN

1.2.3 URL

统一资源定位符(URL)是资源标识符最常见的形式,URL描述了一台特定服务器上资源的特定位置,它可以明确说

明如何从一个精确固定的位置获取资源

现在几乎所有的UR