URI 组件编码器
如果你曾未编码就把类似 name=John & Jane 的值放进 URL,就会明白其中的麻烦:& 被当作新参数,服务器只看到乱码。本工具按 RFC 3986 对任意字符串进行百分号编码,使其可安全用作 URI 组件,并把每个保留字符转成 %HH 对(含空格)。粘贴片段、查询值或重定向目标,即可得到可安全拼接进任意 URL 的结果。
如何编码 URI 组件
-
1
粘贴你的值
输入单个查询参数值、路径段或片段字符串。
-
2
选择编码或解码
切换方向,把百分号转义还原为原始字符。
-
3
运行
工具先把每个字符编码为 UTF-8,再把每个保留字节替换为 %HH。
-
4
复制结果
把输出直接放进你的 URL 模板或 API 客户端。
哪些字符会被转义
本编码器遵循 RFC 3986:只有未保留集合 A-Z a-z 0-9 - _ . ~ 保持不变。其余一切都会变成百分号编码的 UTF-8,包括空格,以及 JavaScript 的 encodeURIComponent 会保留的子分隔符 ! * ' ( )。
| 字符 | 编码为 |
|---|---|
| 空格 | %20 |
! |
%21 |
# |
%23 |
& |
%26 |
' |
%27 |
( |
%28 |
) |
%29 |
* |
%2A |
+ |
%2B |
/ |
%2F |
= |
%3D |
? |
%3F |
é |
%C3%A9 |
组件与完整 URI
本工具比 encodeURI 更严格。encodeURI 会保留 : / ? # [ ] @ ! $ & ' ( ) * + , ; =,因为这些字符在 URL 中是结构性的。对于要拼接进查询字符串的值,你需要严格形式,而这正是本工具的输出:它连 ! ' ( ) * 也会转义,比 JavaScript 的 encodeURIComponent 更进一步。
const url = `/search?q=${encodeURIComponent(userInput)}`;
常见陷阱
- 双重编码: 对已编码的内容再次编码会得到
%2520而不是%20。若不确定来源,请务必先解码。 - 表单中的加号: HTML 表单提交把空格编码为
+,而不是%20。严格遵循 RFC 3986 的解码器(包括本工具)不会把+还原为空格。这种情况请使用能识别表单的解码器。 - 路径分隔符: 在这里编码
/会变成%2F。如果你想保留真正的路径结构,请先拼接各段,再分别编码。
常见问题
这是 RFC 3986 的百分号编码,严格形式。它会转义 :、/、?、# 以及其余保留字符(还有 !、'、(、)、*),因为组件内部不应携带 URL 结构。这使它比 JavaScript 的 encodeURIComponent 更严格,也远比 encodeURI 更严格。
%20 是 RFC 3986 的方式。用 + 表示空格是 application/x-www-form-urlencoded 体编码的遗留。对 URL 中的查询字符串,%20 始终安全;+ 只在由表单 POST 生成时才在服务器端被预期。
每个字符先编码为 UTF-8,然后每个字节都被转义。像 日 这样的字符会变成 %E6%97%A5(三个字节)。
不会。该值在服务器端进行百分号编码以生成你的结果,不会存储或记录;响应发出后,你粘贴的内容不会被保留。
相关工具
ASCII 表参考
完整 ASCII 表,覆盖 0 到 127;列出每个代码的十进制、十六进制、八进制、二进制值和 HTML 数字字符引用写法,包括 NUL、LF、DEL。
HTML 字符参考
可搜索的 HTML 实体列表,含命名代码与数值代码,并支持一键复制特殊字符和符号。
键盘快捷键参考
搜索 macOS、Windows 和 Linux 上 VS Code、Chrome 以及使用 GNU Readline 的 Bash 的文档默认快捷键。
JSON 转 Dart 工具
将 JSON 示例转换为空安全的 Dart 模型类,支持嵌套类型、fromJson、可选 toJson,并在浏览器中私密处理。
IBAN 验证工具
在本地检查 IBAN 的注册国家长度、国内结构和 MOD 97-10 校验位。不上传数据,也不表示账户真实存在。
HTML到文本转换器
从标记中剔除所有HTML标签及元素,生成适用于电子邮件客户端、数据分析及索引处理的纯文本格式。
此工具还提供其他语言版本
- URI-Komponenten-Encoder [DE]
- Bộ mã hóa Thành phần URI [VI]
- Codificador de Componentes URI [ES]
- Encodeur de composants URI [FR]
- Encoder Komponen URI [ID]
- Koder komponentu URI [PL]
- Codificador de Componentes URI [PT]
- مُرمِّز مكوّن URI [AR]
- URIコンポーネントエンコーダー [JA]
- URI-component-encoder [NL]
- URI-komponentkodare [SV]
- ตัวเข้ารหัสองค์ประกอบ URI [TH]
- URI 컴포넌트 인코더 [KO]
- URI Component Encoder [EN]
- Codificatore di componenti URI [IT]
- Кодировщик компонента URI [RU]
- URI Bileşeni Kodlayıcı [TR]