详解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 的使用
相关推荐
万联WANFLOW16 小时前
异地组网速度忽快忽慢到底怎么回事?直连与中继的判断方法和处理步骤
运维·网络·网络协议·p2p
步行cgn18 小时前
HTTP 请求报文结构详解:请求行、请求头、请求体各自的作用
网络·网络协议·http
OpenLoong 开源社区21 小时前
打破 NAT 限制,零侵入跨网络通信:基于 WebRTC 的透明 TCP 隧道跨网络通信方案
网络协议·tcp/ip·开源·webrtc·openloong开源社区
从琳开始98921 小时前
从Socket到UDP回显服务器:Java网络编程完整指南
java·网络·网络协议·udp·java-ee
明天也要努力学习1 天前
HTTP 协议的基本格式和 fiddler 的用法
网络协议·http·fiddler
cpolar技术支持1 天前
网关加 gzip,同时开启 chunked,下载回来的包解不开:把两层编码的解压顺序与长度核对做成只读页
python·http·网络编程·socket·内网穿透
Tel199253080042 天前
温度湿度信号转WiFi/MQTT/Modbus TCP采集模块 无线传输
网络·网络协议·tcp/ip·工业自动化·工控设备
lazy H2 天前
【计算机网络】第 13 篇:NAT 和端口映射是什么?为什么本地服务外网访问不了?
java·网络·网络协议·学习·计算机网络·408
低慢小uav2 天前
(已解决)Zynq芯片lwip协议栈,使用tcp作为服务器Service,接收大量数据时,长度接收正常,接收对数据校验,校验和异常分析
网络协议·tcp/ip·fpga开发
骑着蜗牛撵大象3272 天前
手写一个 HTTP 服务器:从 socket 到 epoll,Linux 上到底怎么把请求变成响应
linux·服务器·网络·http·epoll·socket编程·并发模型