网站 / SEO · Web 安全

URL 解析

scheme/host/path/query/参数表格化

本地处理 · 不上传 免费 · 无需登录 无次数限制 累计 64 次使用
scheme / host / path / query / 参数表格化 · 全本地解析
快速试: 带用户信息 / 端口 / 重复参数 · 含中文编码参数 · ftp 协议
组件分段highlighted breakdown
协议 scheme 用户信息 userinfo 主机 host 端口 port 路径 path 查询 query 锚点 hash
解析组件URL components · 点击复制
查询参数query params · 可增删改 → 实时重建
支持重复 key · 编码值自动解码
#键 (key)值 (value)解码后
重建 URLrebuilt from edits
实时重建结果 edit any field above to update
就绪 · 粘贴或输入 URL 即时解析
第一节

关于本工具

About

调试接口时,一个 URL 的 query 参数散在长串里,肉眼拆容易漏掉某个键值对。这个工具把 scheme、host、path、query 逐段拆开,参数自动解析成表格,空值、重复键一眼可见。解析全程在浏览器本地完成,URL 不会离开设备。

使用场景

接口调试查参数

后端返回了一个回调URL:`https://api.example.com/v3/callback?code=abc123&state=xyz&sign=md5hash`。开发人员需要快速确认`code`和`state`参数是否按规范传递,以及`sign`签名参数是否在路径中。手动拆分URL字符串容易看漏或看错参数名,尤其当参数值包含特殊字符时。本工具将URL的scheme、host、path和每个query参数拆成独立表格,参数名与值一一对应,一眼就能核对参数个数与值格式,避免因参数遗漏导致OAuth登录失败。

网站迁移改链接

公司官网从旧域名`old-site.com`迁移到`new-site.com`,但旧文章里嵌入了大量绝对路径的图片和跳转链接,例如`https://old-site.com/images/logo.png`和`https://old-site.com/about/team`。运维人员需要批量找出这些旧域名链接,并替换为`new-site.com`。用本工具逐条解析链接,能清晰分离出host部分,快速定位哪些链接的host是`old-site.com`,而path部分保持不变,替换时只需改host字段,不会误改其他域名的链接,确保迁移后页面资源不404。

广告投放测落地页

SEM投放设置了带UTM参数的落地页:`https://www.example.com/landing?utm_source=google&utm_medium=cpc&utm_campaign=summer_sale&utm_content=banner_a`。投放主管需要确认所有UTM参数拼写正确(例如`utm_medium`不能写成`utm_meduim`),且参数值没有包含空格或非法字符。手动在地址栏里检查容易眼花,尤其当参数超过5个时。本工具把每个参数拆成独立行,参数名和值分别列在两列,主管可以逐行比对UTM规范,确保追踪数据准确落入Google Analytics的对应维度,避免流量归因错误。

爬虫规则写正则

技术需要写一个正则表达式,从网页源码中提取所有`https://blog.example.com/posts/2024/03/`下的文章链接,但排除带有`?page=`分页参数的链接。面对一堆原始链接如`https://blog.example.com/posts/2024/03/article-1`和`https://blog.example.com/posts/2024/03/?page=2`,肉眼很难快速区分哪些带query参数。用本工具解析后,所有不带query参数的链接其query列显示为空,带参数的则显示具体参数名。技术可以据此快速筛选出目标链接,并写出精准的正则`^https://blog\.example\.com/posts/[^?]+$`,避免爬虫抓取到分页页面造成重复数据。

安全审计查钓鱼链接

安全工程师收到一封可疑邮件,里面包含一个链接:`https://www.secure-bank.com/login?redirect=https://evil.com/phish`。肉眼看去域名是`secure-bank.com`,但`redirect`参数指向了恶意站点。安全工程师需要快速确认这个链接的真实意图——到底是正规银行的登录页,还是钓鱼链接。用本工具解析后,host字段显示为`www.secure-bank.com`,看似正常,但query参数中`redirect`的值被单独列出,工程师一眼就能发现跳转目标是`evil.com`,从而判断这是一个利用合法域名做跳板的钓鱼链接,并立即标记为恶意。

第二节

使用指南

Getting Started

使用步骤

  1. 1在输入框中粘贴待解析的完整 URL(如 https://example.com/path?q=1),点击「解析」按钮
  2. 2页面自动拆解出 scheme、host、path、query 等字段,并以表格形式逐行展示
  3. 3表格中 query 参数(如 q=1)会单独拆成 key-value 对,便于复制每个参数值
  4. 4点击任意字段旁的复制图标,可将该字段内容(如 host 或 path)一键复制到剪贴板

输入输出示例

输入输出说明
https://www.example.com:8080/path/to/page?name=John&age=30#section1scheme: https | host: www.example.com | port: 8080 | path: /path/to/page | query: name=John&age=30 | fragment: section1 | 参数: name=John, age=30常规:最典型的完整 URL,包含 scheme、端口、路径、查询参数和锚点,验证工具能否正确拆解所有组件。
http://localhost:3000/api/users?id=1001&status=activescheme: http | host: localhost | port: 3000 | path: /api/users | query: id=1001&status=active | 参数: id=1001, status=active常规:本地开发场景,host 为 localhost,验证工具对非标准域名的兼容性。
ftp://files.example.com/downloads/file.zipscheme: ftp | host: files.example.com | path: /downloads/file.zip | query: (空) | 参数: (空)边界:非 HTTP/HTTPS 协议(FTP),验证工具是否支持常见非 Web 协议。
https://example.comscheme: https | host: example.com | path: / (或空) | query: (空) | 参数: (空)边界:无路径、无查询、无端口的最简 URL,验证工具对根路径的表示方式(斜杠或空)。
https://example.com/?key=value&key=value2scheme: https | host: example.com | path: / | query: key=value&key=value2 | 参数: key=value, key=value2边界:重复参数名(key 出现两次),验证工具是否保留所有同名参数值,而非只取最后一个。
https://example.com/search?q=hello%20world&lang=zh-CNscheme: https | host: example.com | path: /search | query: q=hello%20world&lang=zh-CN | 参数: q=hello world, lang=zh-CN易错:URL 编码的空格(%20)和连字符(zh-CN),验证工具是否自动解码参数值。
https://example.com/path/with/trailing/slash/scheme: https | host: example.com | path: /path/with/trailing/slash/ | query: (空) | 参数: (空)易错:路径末尾带斜杠,验证工具是否保留尾部斜杠(与无斜杠版本区分)。

常见错误对照

1.URL 包含空格未编码

✗ 错误https://example.com/path with space
✓ 修复https://example.com/path%20with%20space

URL 规范(RFC 3986)禁止未编码的空格,空格必须编码为 %20。工具解析时若遇到未编码空格,可能无法正确识别 path 边界,导致解析结果错位。

2.查询参数中多个值用逗号分隔而非重复键

✗ 错误?tag=red,blue,green
✓ 修复?tag=red&tag=blue&tag=green

URL 查询字符串中逗号不是标准分隔符,不同服务端解析行为不一致。RFC 3986 未定义逗号语义,推荐使用重复的键名(如 ?tag=a&tag=b)以确保各框架正确解析为数组。

3.协议部分漏写冒号或双斜杠

✗ 错误https//example.com
✓ 修复https://example.com

URL 协议(scheme)后必须紧跟 ://(除 mailto: 等特殊协议)。缺少冒号或斜杠会导致工具无法正确分割 scheme 与 host,整段被误判为 path。

4.端口号后误加斜杠

✗ 错误https://example.com:8080/path
✓ 修复https://example.com:8080/path

端口号后加斜杠是正确的(如上 ok 示例),但常见错误是写成 :8080/path 时多一个斜杠如 :8080//path,这会导致 path 部分出现空段,工具解析出空字符串元素。

5.查询参数值包含未转义的特殊字符

✗ 错误?q=hello world & name=john
✓ 修复?q=hello%20world%20%26%20name=john

&、=、% 在查询字符串中有特殊含义,必须编码。未编码的 & 会被解析为参数分隔符,导致参数名/值错乱。工具按标准 RFC 3986 解码,原始数据需先百分号编码。

6.片段标识符(#)后误带查询字符串

✗ 错误https://example.com/page#section?q=1
✓ 修复https://example.com/page?q=1#section

片段标识符 # 之后的任何内容都属于 fragment,不会被发送到服务器。查询参数应放在 # 之前,否则工具解析时 query 字段为空,所有参数被归入 fragment。

7.相对路径与绝对路径混淆

✗ 错误https://example.com/../page
✓ 修复https://example.com/page

URL 中的 .. 是路径归一化语法,但工具解析时通常保留原始 path 字符串,不会自动归一化。若期望得到规范路径,需在输入前自行处理路径中的 . 和 .. 段。

第三节

工作原理

How It Works

核心公式

URL = scheme + "://" + host + path + "?" + query + "#" + fragment

变量说明

  • scheme协议类型,如 http/https/ftp
  • host域名或 IP 地址
  • path资源路径,以 / 开头
  • query查询字符串,键值对 & 连接
  • fragment片段标识符,定位页面内位置

示例

输入 URL:https://www.quanbao5.com/wangzhan/url-parse?lang=zh&tab=faq#usage。解析结果:scheme=https,host=www.quanbao5.com,path=/wangzhan/url-parse,query=lang=zh&tab=faq,fragment=usage。工具按 RFC 3986 标准将各部分拆解为表格,并自动解码 query 中的百分号编码(如 %20 转为空格)。

输入 URL解析 scheme / host解析 path / query拆分 query 参数键值对表格化展示结果示例:https://example.com/path?name=value&page=1→ scheme: https | host: example.com | path: /path→ query: name=value, page=1
用户输入 本地处理 输出结果
第五节

常见问题

Q & A
这个 URL 解析工具能处理带中文的网址吗?

可以。中文网址在浏览器地址栏通常显示为百分号编码形式(例如 %E4%B8%AD%E6%96%87),本工具会先解码成原始中文字符再展示在对应字段中。如果粘贴后 path 或 query 参数里仍是乱码,检查一下是否复制的是已解码的完整中文链接——部分编辑器会自动编码,这属于正常行为,工具不会二次破坏编码。

为什么解析出来的 scheme 是 https 但端口号没有显示?

因为标准端口不显示。HTTPS 的默认端口是 443,HTTP 是 80,如果网址里没有显式写端口号,浏览器和本工具都会认为用的是默认端口,所以端口字段会留空。只有网址里写了「:8080」「:3000」这类非标准端口时,才会显示具体数字。这是 RFC 3986 规定的标准行为,不是工具漏解析。

我复制了带井号(#)的网址,为什么 fragment 部分不见了?

检查一下复制来源。如果是从浏览器地址栏直接复制的,浏览器通常不会把 # 后面的部分(哈希)发送给服务器,所以地址栏可能已经不包含它了。本工具解析的是你粘贴进去的完整字符串——如果粘贴后确实没有 # 及之后内容,说明你复制的源文本本身就不含 fragment。可以尝试从页面源代码或分享链接里复制完整 URL。

解析出来的 query 参数里有多个相同的 key,工具会怎么处理?

本工具会保留所有重复 key 并分别列出。例如?page=1&page=2&page=3,参数表格里会出现三行「page」分别对应值 1、2、3。有些工具只保留最后一个值,但本工具选择展示全部,方便排查参数冲突或调试分页逻辑。如果参数数量超过 20 个,表格会分页显示,避免页面卡顿。

这个工具是在浏览器本地解析还是会上传到服务器?

纯本地解析。工具完全在浏览器里运行,粘贴的 URL 不会离开你的电脑——没有网络请求,无需上传到任何服务器。即使断网也能正常使用。如果对隐私有顾虑,可以放心粘贴包含敏感 token 或内网地址的链接。

为什么解析出来的 host 和域名不一样?比如 www.baidu.cn 显示 host 是 www.baidu.cn?

这是正确的。host 字段是 URL 里「://」之后、第一个「/」之前的部分,它包括端口号(如果有)。而「域名」通常只指注册的二级域名部分(如 baidu.cn)。例如 https://www.baidu.cn:8080/path,host 是 www.baidu.cn:8080,域名是 baidu.cn。本工具会把 host 单独展示,不拆分子域名和端口,保持原始结构。

粘贴了很长的 URL 后,工具卡住了或没反应怎么办?

检查 URL 是否包含换行或空格。如果是从邮件、PDF 里复制的链接,可能带有不可见字符(如零宽空格)或者被截断成多行。建议先粘贴到记事本确认是连续无空格的字符串,再复制到工具输入框。如果 URL 长度超过 8000 字符,浏览器可能会限制显示,但解析逻辑不受影响——结果区会正常输出,只是表格滚动可能略慢。

这个工具和用 JavaScript 的 URL() 构造函数解析有什么区别?

结果基本一致,因为本工具底层也使用了浏览器的 URL 解析标准(WHATWG URL Standard),但额外做了两件事:一是自动解码百分号编码的中文和特殊字符,二是把 query 参数拆成表格展示,方便逐项查看。而直接调用 URL() 构造函数只能通过 searchParams 遍历参数,不够直观。所以本工具适合快速调试和对比参数,而非做程序化调用。

隐私保证所有计算与处理均在你的浏览器本地完成,输入数据不会上传服务器,也不会保存或共享。

选择 打开 +新窗口 esc关闭