URL 编解码与解析工具
一键完成 URL 编码与解码,支持保留 URL 结构或完整编码两种粒度,自动处理中文、空格与特殊字符;附带 URL 解析视图,逐项展示 protocol/host/pathname/search/hash 等组成部分与查询参数。数据仅在浏览器本地处理。
常见问题
encodeURI 和 encodeURIComponent 有什么区别?
encodeURI 保留 URL 中的保留字符(/ ? : @ & = + $ #),适合编码完整的 URL;encodeURIComponent 会编码所有非字母数字字符,适合编码 URL 的某个部分(如查询参数值)。本工具的"保留 URL 结构"对应前者,"完整编码"对应后者。
解码时遇到 + 号会怎么处理?
在 application/x-www-form-urlencoded 格式中,空格会被编码为 +。本工具在解码前会自动将 + 转换为 %20,因此两种空格表示方式都能正确还原。
为什么中文会被编码成 %XX%XX%XX 这样的序列?
URL 标准要求非 ASCII 字符使用 UTF-8 编码后转为百分号编码。一个中文字符在 UTF-8 下通常占 3 个字节,因此会被表示为 3 个连续的 %XX。本工具使用浏览器原生实现,遵循 RFC 3986 标准。
数据会上传到服务器吗?
不会。本工具完全在浏览器内运行,所有处理逻辑由 JavaScript 在你本地执行,输入内容不会发送到任何服务器。
URL 解析视图支持哪些组成部分?
切换到「URL 解析」Tab 后,输入完整 URL 即可看到 protocol(协议)、origin(源)、host(主机+端口)、hostname(主机名)、port(端口)、pathname(路径)、search(查询串)、hash(锚点)、username(用户名)、password(密码)等组成部分,并自动将查询参数解析为键值对表格,每项均可单独复制。解析基于浏览器原生 URL 对象,遵循 URL 标准。
输入的 URL 缺少协议(如 example.com)会怎样?
浏览器原生 URL 对象要求输入必须包含协议(如 https://)。本工具在解析失败时会自动尝试在输入前补上 https:// 重试一次,因此 example.com/path?q=1 这样的输入也能正常解析。如果仍无法解析,会显示明确的错误提示。