编码解码哈希加密格式化时间转换开发生成文本处理网络工具其他工具
首页 / 名词解释 / URL

URL

URL(Uniform Resource Locator,统一资源定位符)是用来定位网络上某个资源的字符串,也就是俗称的「网址」。它是 URI 的一个子集:URI 只负责标识资源,而 URL 在标识之外还指明了访问该资源的方式与位置。一个典型的 URL 由若干部分组成:

客户端按 scheme 选定协议、连接 host:port、请求 path,并把 query 一起发给服务器。关键要点在于编码:URL 只允许有限的 ASCII 字符,中文、空格以及参数值里的 &=# 等必须做百分号编码(如空格编码为 %20),否则会被误解析——这正是 url-encode 要处理的事,而拆解各段可以用 url-parse。常见误区有两个:# 后的 fragment 只在客户端生效、不会发送给服务器;另外别把 URL 和域名混为一谈,域名只是其中 host 那一部分。

常见问题

URL 和 URI、URN 有什么区别?
URI 是统称,用来标识资源;URL 和 URN 都是它的子类。URL 通过位置和访问方式定位资源(如 https://example.com/a),URN 只用名字唯一标识资源而不关心位置(如 urn:isbn:0451450523)。日常说的「网址」基本都是 URL。
为什么 URL 里的中文或空格要编码?
URL 规范只允许有限的 ASCII 字符,其他字符需先按 UTF-8 转成字节再做百分号编码(空格变 %20,「中」变 %E4%B8%AD),否则服务器可能解析出错或参数被截断。可以用 url-encode 工具处理。
# 后面的内容会发送给服务器吗?
不会。fragment(锚点)只在浏览器端使用,用于定位页面内位置或供前端路由读取,HTTP 请求不会携带它,因此服务端日志里也看不到 # 之后的部分。

相关工具

相关名词