http 和tcp /ip
http 是个应用层协议, http 无需 操心网络通信的具体细节,
它把联网的细节都交给了通用, 可靠的因特网传输协议tcp/ip
tcp 提供
无差错的数据传输
按序传输
未分段的数据流
只要建立了tcp 连接, 客户端和服务器之间的报文交换就不会
丢失,不会被破坏, 也不会在接受时出现错序了。
http 协议位于tcp 的上层,http 使用tcp 来传输其报文数据,
与之类似, tcp 则位于ip上层
在http 客户端服务器发送报文之前,需要 用网阶协议
地址和端口号在客户端和服务器之间建立一条 tcp/ip
http:// www.joes-hardware.com/ seasonal/index-fall.html
http : url 第一部分url 方案 url 使用的资源
url : www.joes-hardware.com 指定的服务器的位置, 告知
web 客户端资源位于何处
URL 的第三部分的 / seasonal/index-fall.html 资源路径
路径说明了请求的是服务器上那个特定 的本地资源。
大多数url 都有同样的/; 方案:// 服务器/位置/路径
url 组件
方案 使用什么协议
方案实际上是规定如何访问指定资源的主要标识符,
它会告诉负责解析url 的应用程序应该使用什么协议,
主机与端口
要想在因特网上找到资源, 应用程序要知道 那台机器
装载了资源。在那个地方找到资源
主机组件标示了因特网上能够访问到资源的数组署主机器
www.joes-hardware.com 或者ip 地址 来表示主机名
http:// www.joes- hardware.com: 80 / index.html
http:// 161.58.228.45:80 / index.html
端口组件标识了服务器正在监听的网络端口,对下层使用tcp协议的http来
默认端口为80
用户名和密码
组件 , 很多服务器都要求输入用户名和密码才会允许用户访问数据。
路径
参数:
为了向应用程序 提供它们所需要输入资源,以便正确地与服务器进行交互。
url 中有一个参数组件,这个组件就是url 中的名值对列表, ????️字符“;”
将其与url 的其余部分 分隔开来。
ftp://prep.ai.mit.edu/pub/gnu; type=d
查询字符串。。都可以通过提问或进行查询来缩小所请求自资源类型范围。
http:// www.joes-hardware.com/inde .ht,l?item=12323&color=blue
片段 前面有一个 #
http:// www.joes-hardware.com/tools.html#drills
url 片段是有客户端使用 服务其处理的是整个对象。