计算机网络书籍--《网络是怎样连接的》阅读笔记

第一章 浏览器生成信息

1.1 生成HTTP请求信息

1.1.1 URL

Uniform Resource Locator, 统一资源定位符。就是网址。

不同的URL能够用来判断使用哪种功能来访问相应的数据,比如访问Web服务器就要用"http:",而访问FTP服务器用"ftp:"。

  • FTP:FileTransferProtocol,文件传送协议。这是一种在上传、下载文件时使用的协议。使用FTP协议来传送文件的程序也被叫作FTP。

1.1.2 解析URL

主要内容包括:协议,要访问的服务器和访问什么文件。

1.1.3 HTTP的基本思路

主要由两部分组成:

  1. 请求信息
  2. 响应信息

每条请求信息中只能写一个URI,所以每次只能获取一个文件,如果需要获取多个文件,必须对每个文件单独发送一条请求。

1.1.3.1 请求信息

由两部分组成:

  1. 对什么进行请求
  2. 进行怎样的操作

"对什么请求"部分称为URI,一般来说,URI的内容是一个存放网页数据的文件名或者是一个CGI程序的文件名,是访问目标的统称。格式为 /<目录名>/.../<文件名> 。因为路径名一般都包含在URL中,因此只要从URL提取出来写上去就行。

  • URI: Uniform Resource Identifier,统一资源标识符。

    CGI程序:对Web服务器程序调用其他程序的规则所做的定义就是CGI。

"进行怎样的操作"的部分称为方法,方法表示让Web服务器完成怎样的操作,比如读取URI表示的数据、将客户端输入的数据发送给URI表示的程序等。下面是一些HTTP的主要方法。

常用的方法是GET和POST,GET多用于访问Web服务器获取网页数据时;POST多用于在表单中填写数据并将其发送给Web服务器时。因为GET方法能够发送的数据只有几百个字节,如果表单的数据超过这一长度,则必须使用POST方法来请求。

除该两种部分,还有一些还有一些用来表示附加信息的头字段。客户端向 Web 服务器发送数据时,会先发送头字段,然后再发送数据。

请求信息的格式

  1. 请求行
  2. 信息头
  3. 信息体

请求行可以大致了解请求的内容,包含方法、URI和HTTP版本,大致可以清楚向谁(URI)进行怎样的操作(方法)。

信息头是对请求内容进行更为详细的补充。

信息体就是想向服务端发送的信息,比如账号密码,一般和POST请求匹配使用,将表单中的信息发送给服务端。

1.1.3.2 响应信息

和请求信息大致相同,只不过不是请求行,而是状态行,内容为HTTP版本、状态码和响应短语。状态码为一个数字,用来告知程序执行的结果;响应短语则是一段文字,用来向人们告知执行的结果。

返回响应信息后,就可以得到请求信息对应的结果,如果无错误,则正常显示在浏览器上。为文字时,则该对信息全部处理完毕,如果还包含图片等资源,则还有下文。

当有图片时,网页中相应位置嵌入表示图片文件的标签(<img src = "image1.jpg>)的控制信息。浏览器在读到该标签时,会在屏幕上留出来显示图片的空间,然后再次访问Web服务器,按照按照标签中指定的文件名向 Web 服务器请求获取相应的图片并显示在预留的空间中。这个步骤和获取网页文件时一样,只要在 URI 部分写上图片的文件名并生成和发送请求消息就可以了。

且因为每次请求只能获取一个文件,所以遇到图片时还要对存在的图片进行的请求。

相关推荐
2501_915106328 小时前
抓包抓到乱码或压缩字节怎么解析,TraceEagle五种查看模式和一键解码
网络协议·计算机网络·网络安全·ios·adb·https·udp
一木 之林11 小时前
Dify学习笔记 03 · RAG检索增强生成:三代范式、评估与落地(第40-45、55-56集)
笔记·小程序·交互·dify
流浪00111 小时前
计算机网络篇14:传输层——UDP 协议:8 字节定长报头划出报文边界,16 位端口号完成分用
计算机网络·udp·udp包头结构
MicrosoftCloud15 小时前
计网 09|TCP 流量控制与拥塞控制:rwnd 滑动窗口 + 慢开始/拥塞避免/快重传快恢复
计算机网络·考研·tcp·流量控制·拥塞避免·拥塞控制·慢开始
箓维16 小时前
TCP Socket的进阶实现
网络·笔记·tcp/ip
二哈赛车手16 小时前
新人笔记---hermes定时功能设计,具体讲解以及可优化点
java·人工智能·笔记·spring·ai·typescript
CQU_JIAKE16 小时前
10.29计算机网络
计算机网络
星恒随风17 小时前
Linux网络编程:应用层协议究竟是什么?从网络计算器到TCP Socket抽象基类完整实现
linux·网络·笔记·tcp/ip
智学AI18 小时前
AI博主写作素材管理方法分享:资料归集、笔记关联与文档归档
人工智能·笔记
叼烟扛炮19 小时前
[LangChain] 学习笔记(02):LCEL 链式调用与动态模型配置实战
服务器·开发语言·网络·笔记·学习·langchain