ToolConvoyToolConvoyv2.6
TEXT

URL 解析器 — 在浏览器中将 URL 拆解为各组成部分

将 URL 解析为各组成部分 —— scheme、host、port、path、query、fragment。符合 RFC 3986,全部本地运行。无上传、无注册。

● 本地运行 · 剪贴板友好页面加载以来工具发出的网络请求:0 次

URL Parser

Parse URLs to extract protocol, hostname, path, query params, and more.

URL 看起来像一整串字符,实际上是由一套自 2005 年以来基本未变的语法规则拼在一起的六个独立组成部分。scheme 告诉浏览器使用什么协议,authority 说明请求发往哪里,path 指定资源,query 附加参数,fragment 指向响应内部的某个片段。每个 Web 开发者都能叫出这些组成部分的名字,但能正确解析带有 userinfo(user:pass@host)、IPv6 地址([::1]:8080)或与 scheme 不一致的端口的 URL 的人要少得多。URL 解析器省去这些猜测:粘贴一段字符串,得到结构化拆分结果,清楚哪个组成部分有问题。

URL 缺陷最常见的来源,是那些看起来是一回事、其实是另一回事的组成部分之间的交互。scheme 为 https 的 URL 使用端口 8080,在网络层能工作,但证书校验会失败,因为 TLS 期望的是 443 端口。fragment #/route 看起来像客户端路由,但浏览器在 HTTP 请求离开本机前就会把它剥离。path /foo/../bar 会被 HTTP 客户端在服务器看到之前解析为 /bar。解析器不解析这些交互 —— 它按字面展示每个组成部分 —— 但分开显示让这种交互变得可见,而单行 URL 字符串做不到这一点。

最后做个交接:如果 query string 需要结构化解析,请把 query 这一组成部分送入本站的 Query String Parser 工具,输出为 JSON。如果 URL 是更大的 HTTP 调试环节的一部分,把解析器与 HTTP Headers Parser 和 cURL-to-Python 搭配使用,从 URL 到线上格式追溯完整的请求链。站点迁移过程中批量检视 URL 时,复制整份列表逐个解析 —— 结构化输出让两个版本的同一 URL 之间的 diff 变得直观。

广告

使用方法

  1. 粘贴一个 URL

    把任意 URL 放入输入框 —— 绝对路径(`https://example.com/path?q=1#top`)、相对路径(`/path/to/resource`),或协议相对路径(`//cdn.example.com/lib.js`)。解析器会把它拆解为结构化的各个组成部分。

  2. 逐项检视各组成部分

    scheme、authority(userinfo、host、port)、path、query string 和 fragment 分别显示在独立字段中。host 还会进一步拆分为 subdomain、domain 和 TLD,便于快速查看。

  3. 复制解析后的 JSON

    点击「Copy as JSON」即可获得结构化输出,可直接用于脚本或调试。每个组成部分都是顶层 key,对应 URL 中的原始字符串值。

常见问题

解析器能处理格式错误或不完整的 URL 吗?

可以。Web URL 使用 WHATWG URL Standard,非浏览器 URL 回退到 RFC 3986。格式错误的 URL 会显示警告,指出哪个组成部分解析失败。像 `/api/users` 这类不完整 URL,会按「仅 path」解析,没有 scheme 也没有 authority。

host 和 hostname 有什么区别?

host 包含端口(`example.com:8080`),hostname 仅是域名(`example.com`)。端口单独显示。如果 URL 省略端口,会根据 scheme 推断(HTTP 为 80,HTTPS 为 443),并以括号形式展示。

查询参数如何处理?

原始 query string 按原样展示(`q=hello&page=1`)。如需结构化提取参数,请使用 Query String Parser 工具,它会把查询解析为 JSON 对象,支持数组处理、嵌套 key 和重复 key 合并。

解析输出中的 URL 编码文本如何处理?

解析器展示每个组成部分的解码形式。`/my%20file` 这个 path 会显示为 `/my file`,原始编码形式保留在独立的「raw」字段中。这样可同时查看人类可读版本与线上传输版本。

限制说明

  • 不做 punycode 到 Unicode 的域名转换像 `xn--mnchen-3ya.de` 这类国际化域名以 Punycode 形式展示。Unicode 形式无法恢复,除非借助独立的 IDN 库,因为该编码本身是有损的。
  • 不做 URL 规范化解析器不做 URL 规范化(例如解析 `../` 段、合并重复斜杠、解码过度编码的字符)。URL 按字面写法解析。
  • 不跟随重定向,也不做 DNS 解析本工具是纯粹的语法解析器。不解析主机名、不跟随重定向,也不验证 URL 是否指向真实资源。

平台说明

macOS
Foundation 内建的 `NSURLComponents` 功能类似,但需要 Swift 或 Objective-C。若从 Safari 地址栏复制了 URL 想查看,无须写代码的话,本浏览器工具是更合适的选择。
Linux
命令行等价方式:`python3 -c 'from urllib.parse import urlparse; print(urlparse("https://example.com"))'`。从聊天窗口或文档页临时复制 URL 来检查时,本浏览器工具更顺手。
Windows
PowerShell 的 `[System.Uri]` 类按相同的 RFC 3986 规则解析 URL,但需要 .NET 运行时。本浏览器工具零依赖、离线可用。
Web
完全在客户端运行。调试 API 期间非常有用 —— 从控制台错误日志中粘贴一条 URL,立刻看清哪个组成部分出错。
广告
广告