软考——WWW与HTTP

1.万维网(world wide web)

是一个规模巨大的、可以资源互联的资料空间。由URL进行定位,通过HTTP协议传送给使用者,又由HTML来进行文件的展现。

它的主要组成部分是:URL、HTTP、HTML。

(1)URL

统一资源标识符,负责给万维网上的资源定位。URL的组成:

<协议>://<主机>:<端口号>/<路径>

(2)HTTP

超文本传输协议

负责规定浏览器和服务器怎么进行互相交流

(3)HTML

超文本标记语言

用于描述网页文档的一种标记语言

WWW采用C/S模式:

(1)用户使用浏览器建立客户机与服务器的连接,并发送浏览请求

(2)web服务器接收到请求后返回信息到客户机

(3)通信完成后关闭连接

2.HTTP

默认使用80端口提供服务

(1)HTTP工作过程

是在C/S的模式下、基于TCP协议

通过使用浏览器,发起一个到服务器上指定端口(80)的服务请求。一旦收到请求,服务器向客户机发回响应消息。客户端请求和链接端口需大于1024

(2)为什么用TCP呢

需要传输很多数据以免乱序

TCP有传输控制

乱序可纠正

(3)HTTP报文

请求报文:客户端向服务器发送的报文

响应报文:服务器向客户机发送的报文

常见HTTP请求报文方法:

方法 描述
1 GET 从服务器获取资源。用于请求数据而不对数据进行更改。例如,从服务器获取网页、图片等。
2 POST 向服务器发送数据以创建新资源。常用于提交表单数据或上传文件。发送的数据包含在请求体中。
3 PUT 向服务器发送数据以更新现有资源。如果资源不存在,则创建新的资源。与 POST 不同,PUT 通常是幂等的,即多次执行相同的 PUT 请求不会产生不同的结果。
4 DELETE 从服务器删除指定的资源。请求中包含要删除的资源标识符。
5 PATCH 对资源进行部分修改。与 PUT 类似,但 PATCH 只更改部分数据而不是替换整个资源。
6 HEAD 类似于 GET,但服务器只返回响应的头部,不返回实际数据。用于检查资源的元数据(例如,检查资源是否存在,查看响应的头部信息)。
7 OPTIONS 返回服务器支持的 HTTP 方法。用于检查服务器支持哪些请求方法,通常用于跨域资源共享(CORS)的预检请求。
8 TRACE 回显服务器收到的请求,主要用于诊断。客户端可以查看请求在服务器中的处理路径。
9 CONNECT 建立一个到服务器的隧道,通常用于 HTTPS 连接。客户端可以通过该隧道发送加密的数据。

(3)HTTP各版本的对比

特性 HTTP/1.0 HTTP/1.1 HTTP/2 HTTP/3
协议类型 文本协议 文本协议 二进制协议 基于 UDP 的 QUIC
连接模式 非持久连接 持久连接 持久连接 基于 QUIC 的连接
多路复用 不支持 不支持 支持 支持
队头阻塞 存在 存在 部分解决 完全解决
连接建立延迟 较低 极低(支持 0-RTT)
缓存支持 基础支持 完善支持 完善支持 完善支持
传输安全性 依赖 TLS 依赖 TLS 1.3
性能开销 较高 较低 较低
适用场景 静态网页 小型项目 动态网站 实时通信和高延迟网络
相关推荐
老前端的功夫6 小时前
前端浏览器缓存深度解析:从网络请求到极致性能优化
前端·javascript·网络·缓存·性能优化
Running_slave7 小时前
你应该了解的TCP滑窗
前端·网络协议·tcp/ip
p66666666689 小时前
vmware虚拟机的三种网络配置详细介绍,包能解决虚拟机网络问题
网络
赖small强9 小时前
【Linux 网络基础】Linux 平台 DHCP 运作原理与握手过程详解
linux·网络·dhcp
无证驾驶梁嗖嗖9 小时前
无需公网 IP,MongoDB 也能跨环境访问?试试这个实用方案
网络协议·tcp/ip·mongodb
Mu.3879 小时前
计算机网络模型
网络·网络协议·计算机网络·安全·http·https
我有一棵树10 小时前
file 协议与 http 协议的区别:为什么本地 HTML 无法加载相对路径 JS,以及正确的解决方式
javascript·http·html
xixixi7777711 小时前
解析一下传输安全——“它是什么”,更是关于“它为何存在”、“如何实现”以及“面临何种挑战与未来”
网络·安全·通信
jerryinwuhan13 小时前
socket由浅入深
网络
xu_yule15 小时前
网络和Linux网络-3(套接字编程)TCP网络通信代码
linux·网络·tcp/ip