← 退出

URL 解析

拆解 URL 各组成部分与查询参数

组成部分
协议 (protocol)https:
主机名 (hostname)example.com
端口 (port)8080
路径 (pathname)/path/page
查询字符串 (search)?id=123&name=test
锚点 (hash)#section1
源 (origin)https://example.com:8080
查询参数(共 2 个)
参数名值
id123
nametest

关于URL 解析

URL 解析工具把一个网址拆开,逐项列出它的协议、主机名、端口、路径、查询字符串、锚点和源(origin),并把查询字符串里的参数整理成「参数名 / 值」表格。拆分使用的是浏览器内置的标准 URL 解析功能,所以结果和你写网页脚本时 new URL() 得到的一致。它只分析你输入的这串文字,不会真的访问这个网址,也不能判断网址是否存在、是否安全。排查带一长串参数的链接、核对跳转地址、调试接口请求时很方便。

操作步骤

  1. 在「输入 URL」框里粘贴完整网址,必须带协议头,例如 https://。页面打开时已有一个示例网址。
  2. 输入合法时,「组成部分」区域会列出七行:协议、主机名、端口、路径、查询字符串、锚点、源。点该区域右上角的复制按钮,会把这七行按「名称: 值」的格式复制。
  3. 如果网址带有 ? 后面的参数,下方会出现「查询参数(共 N 个)」表格,逐行显示「参数名」和「值」,值已经自动做过 URL 解码。右上角复制按钮会把参数复制成 JSON。
  4. 输入的内容无法解析时,会显示红色提示「不是有效的 URL(需要包含 http:// 或 https:// 等协议头)」,补全协议头即可。

一个实际算出来的例子

默认示例 https://example.com:8080/path/page?id=123&name=test#section1 的解析结果是:协议 https:,主机名 example.com,端口 8080,路径 /path/page,查询字符串 ?id=123&name=test,锚点 #section1,源 https://example.com:8080,参数表有两行,id 为 123,name 为 test。再看一个带编码的:https://example.com/search?q=hello%20world&tag=a&tag=b,端口一栏显示「(默认)」,参数 q 的值被解码为 hello world,tag 出现两次,表格里两行都会显示(a 和 b)。这些结果都是用同样的标准解析函数实际运行得到的。

支持范围与已知限制

  • 必须包含协议头。只写 example.com/a 会被判定为无效,不会自动补 https://。
  • 「端口」一栏在网址里写了非默认端口时显示数字;如果没写端口显示「(默认)」;如果显式写了该协议的默认端口(如 https 的 :443),显示「443 (默认端口)」。
  • 查询参数表会完整列出重复的参数名(如上面的 tag 两行),点击复制得到的 JSON 也会保留它们:重复的参数名会合并成数组,例如 tag 得到 ['a', 'b']。
  • 对 mailto:、file: 这类没有标准主机和端口的地址,这类地址在标准解析里没有有效的源(其值为字符串 null),「源」一栏会显示「(无)」。
  • 主机名为中文域名时,会显示浏览器转换后的 punycode 形式(以 xn-- 开头)。
  • 只解析不访问:不检查链接是否能打开,不展开短链接,也不跟踪重定向。
  • 「组成部分」只展示标准字段,不会拆分用户名密码、子域名或者顶级域名。

常见问题:为什么提示「不是有效的 URL」?

最常见的原因是漏了协议头,比如直接粘贴了 www.example.com/page。给它加上 https:// 就能解析。另外,地址里含有空格、不完整的协议(如 htp://)或格式不合规的端口,也会被判定为无效。

常见问题:查询参数里的中文或 %20 是怎么显示的?

参数表里的值是已解码后的内容,%20 会显示成空格,UTF-8 百分号编码的中文会显示成汉字。但「查询字符串」那一行显示的是原样的编码文本,方便你对照原始链接。

常见问题:锚点(#后面的内容)为什么不在参数表里?

锚点是浏览器本地使用的部分,通常不会随请求发送给服务器,也不属于查询参数。有些单页应用会把路由写在锚点里,可以在「锚点」一行里看到,但它不会被拆成参数表。

常见问题:能用来检查链接安全吗?

不能。工具只做文字拆分,看不出这个网址是否是钓鱼链接。但它可以帮你看清真正的主机名:例如 https://example.com@evil.test/ 这种写法里,真正的主机名是 evil.test,而不是前面的 example.com,拆分后一目了然。

隐私与处理方式

解析在你的浏览器里完成,不会发出任何网络请求,你输入的网址不会被上传或保存,也不会被工具访问。刷新页面后输入框恢复为示例网址。注意:带有登录令牌、密钥等敏感参数的链接,仍应避免随意粘贴到不信任的地方或分享给他人。