URL
URL 作为统一资源定位符的定义与其在 URI 体系中的位置说明
#growing
#concept
#network
[!info] related notes
- 相关概念:路由 · DNS
- 浏览器上下文: 浏览器导航与前端路由, Location 对象
URL
URL(Uniform Resource Locator,统一资源定位符)是互联网上最常见的资源地址表示方式。它不仅标识资源,还说明应该如何访问这个资源。
一句话定义
URL 是 URI 的一种具体形式,用来描述资源的位置和访问方式。
它解决什么问题
- 用统一格式表达网页、接口、文件等资源地址
- 让浏览器、服务器和应用能共享同一套地址语义
- 为路由、参数传递、资源定位提供基础载体
常见组成部分
以这个地址为例:
https://example.com:8080/user/profile?id=123#section1
它通常包括:
- 协议:
https - 主机:
example.com - 端口:
8080 - 路径:
/user/profile - 查询参数:
?id=123 - 片段标识:
#section1
和 URI 的关系
URI(Uniform Resource Identifier,统一资源标识符)是上位术语。按 RFC 3986,一个 URI 可以具有定位符、名称或两者兼有的作用,不能将其画成两个互斥且穷尽的子类。
- URL 强调定位和访问机制,例如
https://example.com/page。 - URN 常指
urnscheme 下的持久名称,例如urn:isbn:978-7-111-63666-8;名称的持久性不等于资源始终在线。
本页保留 URI 等旧别名供已有链接检索,但 URL 与 URI 不是严格同义词。浏览器 API 的具体解析行为还应参考 WHATWG URL 标准,不宜把 RFC 通用 URI 语法直接等同于所有浏览器处理细节。
解析与访问的区别
解析地址只是拆解 scheme、host、path 等部分,不代表 DNS 解析成功、资源存在或请求已获授权。片段 #section1 通常由客户端处理,不作为 HTTP 请求目标发送;查询参数则属于请求目标的一部分。
和路由的边界
- URL 关注“地址长什么样”
- 路由关注“这个地址应该映射到什么页面、资源或逻辑”
也就是说,URL 是路由的输入之一,但两者不是同一个概念。
最短记忆方式
URL 是资源地址;路由是地址到内容或逻辑的映射规则。