详解HTTP中的URL

什么是 URL(Uniform Resource Locator)统一资源定位符

URL 的组成部分

bash 复制代码
https://v.bitedu.vip/personInf/student?userId=10000&classId=100

所采取的协议类型

bash 复制代码
https

域名(可以通过 DNS 服务器解析成一个具体的 IP 地址)

bash 复制代码
v.bitedu.vip

端口号

上面 URL 地址省略了端口号,浏览器会根据协议类型自动决定使用哪个端口

如 https 协议默认使用 443 端口,http 协议默认使用 80 端口

文件路径(可以是真实的,也可以是虚拟的)

bash 复制代码
/personInf/student

查询字符串(query string),以问号 ? 开头

bash 复制代码
userId=10000&classId=100

查询字符串(query string)是一个键值对结构

键值对之间使用 & 来分隔

键和值之间使用 = 来分隔

片段标识(以#号开头),可以通过不同的片段标识来跳转到文章的不同章节

示例一:
bash 复制代码
https://cn.vuejs.org/guide/essentials/application.html#the-root-component
示例二:
bash 复制代码
https://cn.vuejs.org/guide/essentials/application.html#mounting-the-app

对比示例一和示例二,这是同一篇文章的不同章节

关于 URL encode

URL 主要使用 ASCII 字符集(主要是英文字母,数字和极少数标点符号)在互联网上传输

造成的两个问题:

非英文字符无法传输

一些在 URL 上有特定意义的字符想要被当成是普通文本时,存在困难

解决办法:

需要对非英文字符和一些特殊字符进行编码(百分号编码)

了解常见抓包工具 Fiddler 的使用
相关推荐
IPdodo_1 小时前
跨境 API 调用不稳定怎么办:出口、超时重试与链路监控的实践
网络·python·网络协议
碳基修炼6 小时前
排查记:本地 devServer 是 http,浏览器却把 302 重定向升级成了 https
前端·http
那年窗外下的雪.14 小时前
第 02 天:Linux 权限、inode、目录项与链接
学习·http
那年窗外下的雪.15 小时前
AIDC 学习日志|第 27 天|EVPN 多归属收敛时间线与 Leaf2 接管验证
网络协议·学习·http·tcpdump
j7~15 小时前
【Linux】三十八.C++ 手写 HTTP 服务器:裸 socket + fork 多进程,从 HTTP 报文解析到浏览器打开网页
linux·网络·网络协议·学习·http·网络编程
小则又沐风a16 小时前
深入理解TCP协议----滑动窗口,流量控制
linux·网络协议·tcp
captain3761 天前
网络原理(9)-数据链路层
java·网络协议·java-ee
yi碗汤园1 天前
MQTT消息队列遥测传输协议
网络·网络协议·unity
花间相见1 天前
【后端开发|网络编程】—— 五种实时通信方案全解析:短轮询、长轮询、SSE、MQTT、WebSocket
后端·网络协议
AKA__Zas2 天前
跨网段主机的文件传输过程
java·网络·网络协议·学习方法