首页/编码转换/URL 16进制

URL 编码/解码 (HEX)

对字符串进行深度全量或半量 HEX 十六进制百分号转义与还原。

输入 Length0

配置

功能简介

URL 16进制

URL 十六进制进阶混淆。将 URL 中的字符转换为 %XX 的 16 进制转义形式,提升网页 URL 在特殊代理或极端过滤环境下的兼容性与穿透性。

如何使用

1. 输入原始 URL;2. 点击转换;3. 获取全编码后的 16 进制网址字符串。

安全保障

算法公开透明,旨在解决传输兼容性而非对抗解密。您的网址隐私对本系统不可见。

100% Client Side
📘 使用指南与技术说明

痛点引入

作为程序员,谁还没在URL编码上踩过坑?明明看着正常的网址,一传参数就乱码,调试半天发现是特殊字符没处理好。手动一个个字符转16进制?那简直是摸鱼终结者!特别是处理中文参数、特殊符号时,传统编码方式经常让你怀疑人生——为什么这个接口又报错了?

核心功能深度解析

URL 16进制工具的核心是基于RFC 3986规范实现的百分号编码(Percent-Encoding)。它会把URL中的非ASCII字符和保留字符转换成%后跟两位十六进制数的形式。比如空格变成%20,中文“你好”变成%E4%BD%A0%E5%A5%BD。

技术底层其实是个字符映射表:ASCII字符集(0-127)大部分直接保留,128-255的扩展字符和Unicode字符都需要转换。工具内部通过正则匹配识别需要编码的字符,然后使用递归算法处理嵌套结构,确保多层编码也不会出错。

行业应用场景

联调场景:前端传了个带中文搜索关键词的URL,后端接口报400错误?用这个工具快速检查编码是否正确,避免前后端扯皮。

测试环境:自动化测试中需要构造特殊字符的测试用例,比如包含&、?、=这些容易混淆的字符,直接生成16进制编码,保证测试覆盖率。

生产环境:API网关需要对敏感参数进行编码传输,防止中间人篡改。比如把用户ID转成16进制形式在URL中传递,既安全又符合规范。

FAQ 常见问题

Q1:URL 16进制编码和Base64编码有什么区别? A:16进制编码是百分号+两位十六进制数,主要用于URL安全传输;Base64是用64个字符表示二进制数据,主要用于数据传输。前者不会改变URL结构,后者可能包含+/=等URL不友好字符。

Q2:为什么有时候需要双重编码? A:当你的参数本身已经包含%字符时,比如传递一个已经编码过的字符串作为新参数,就需要对%再次编码为%25,防止解析错误。

Q3:工具支持哪些字符集? A:完整支持UTF-8字符集,包括中文、日文、韩文、emoji表情等所有Unicode字符。

Q4:编码后URL长度有限制吗? A:虽然理论上没有硬性限制,但实际中浏览器和服务器对URL长度都有限制(通常2048-8192字符),编码后长度会增加,需要注意控制。

Q5:什么时候应该用16进制编码而不是encodeURIComponent? A:encodeURIComponent是JavaScript内置方法,但有些场景需要更精细的控制,比如只编码特定字符集,或者需要兼容老旧系统时,手动16进制编码更灵活。

技术科普/延伸阅读

URL编码的江湖里有个经典“悬案”:为什么空格有时候是%20,有时候是+?这其实是历史遗留问题——早期application/x-www-form-urlencoded格式用+表示空格,而RFC 3986规定用%20。现在大部分系统都兼容两种,但为了规范起见,建议统一使用%20。

想深入研究的同学可以看看RFC 3986标准文档,里面详细定义了URI的语法和编码规则。另外,W3C的URL Living Standard也在不断更新,关注这些能让你在URL处理上少踩很多坑。

📖 同类工具推荐阅读

前端 Base64 编解码:别让你的密钥在公网上裸奔

很多开发者把 Base64 当成'加密',这可能是安全史上最大的误解。本文拆解 Base64 编码的底层位运算逻辑,探讨为什么这种看似神秘的代码其实是一块透明玻璃,以及为什么在浏览器本地处理这些敏感编码是保护工程安全的最后一道防线。

那些藏在 URL 里的双重编码漏洞:一次 SQL 注入的完整路径

明明部署了昂贵的 WAF 防火墙,为什么数据库还是被拖库了?黑客并没有使用什么零日漏洞,而是巧妙地利用了 URL 的“双重编码”特性。本文将带你重构一次真实的攻击路径,揭示架构分层中的安全盲区,以及开发者最容易犯的致命错误。

那个把对象直接 toString 传进 URL 的同事,把我们的接口搞崩了

一个前端新人的失误:'?filter=[object Object]',让后端的 JSON.parse 直接崩溃,引发了一场 P3 级事故。本文深入探讨 JSON 与 GET 参数互转的种种陷阱:嵌套对象怎么传?数组怎么解析?URL 长度限制在哪里?以及如何避开这些暗坑。

计算机差点变成巴别塔:Unicode 发明前,我们如何处理多语言文字

在 UTF-8 统治世界之前,计算机世界曾是一片混乱的割据地。为了显示中文、日文或希腊文,开发者们发明了无数互不兼容的“代码页”。本文带你回顾那段满是乱码、冲突与妥协的编码演进史,理解 Unicode 存在的终极意义。

💡 想要更多功能?

发现 Bug 或是希望加入新工具?支持免费提建议或商业私有化定制开发