介绍
URL(统一资源定位符)只能包含有限的字符集 - 字母、数字和少数特殊符号。当您需要在 URL 中包含空格、特殊字符或国际字符时,必须使用百分比编码以确保在互联网上正确传输。我们的 URL 编码解码器可以即时准确地处理这种转换。
URL 编码将不安全的 ASCII 字符替换为 "%" 后跟两个十六进制数字,而 URL 解码则逆转此过程。这对于表单提交、查询参数、API 请求以及 URL 包含空格或特殊字符(如 &、?、#)和国际字符的任何情况都至关重要。
该工具支持完整的 URL 编码和组件级编码(用于查询参数和片段)。所有处理都在您的浏览器本地进行,完全保护隐私 - 您的 URL 永远不会被传输或记录。
主要功能
- 1 使用正确的百分比编码对 URL 进行编码以处理特殊字符
- 2 将 URL 解码回可读的、人类友好的格式
- 3 单独编码 URL 组件(查询参数、片段)
- 4 处理空格为 %20 或 + ,可切换选项
- 5 支持国际字符和 Unicode (UTF-8)
- 6 输入或粘贴时实时编码/解码
- 7 批量处理:一次编码/解码多个 URL
- 8 一键复制到剪贴板方便传输
- 9 清晰指示编码和解码部分
- 10 在编码时保留 URL 结构,仅编码必要的部分
- 11 检测格式错误的 URL
- 12 支持包含特殊字符的 URL:@、#、&、?、=、/
使用方法
- 1 在输入字段中粘贴您的 URL
- 2 选择您要编码还是解码
- 3 选择空格编码方式:%20(标准)或 +(表单数据)
- 4 结果会即时显示在输出区域
- 5 点击"复制"将编码/解码后的 URL 复制到剪贴板
- 6 对于多个 URL,每行粘贴一个进行批量处理
- 7 使用组件编码选项仅对查询参数进行编码
为什么选择此工具
组件智能识别
了解完整 URL 编码和组件编码的区别,保留 URL 结构,仅编码所需部分。
UTF-8 支持
正确处理国际字符、表情符号和 Unicode 符号,使用正确的多字节编码。
隐私优先
所有 URL 编码和解码都在您的浏览器本地进行,您的 URL 永远不会发送到任何服务器。
开发者友好
批量处理和组件级编码使其成为 API 开发和查询字符串构建的理想选择。
即时结果
输入时实时编码/解码,无需等待,无服务器请求,即时反馈。
格式选项
在 %20 和 + 之间选择空格编码方式,以匹配您的特定用例(URL vs 表单数据)。
常见使用场景
为带有查询参数的 API 请求准备 URL
对表单数据进行编码以便通过 GET 请求提交
在 Web 开发中处理包含空格和特殊字符的 URL
解码服务器日志或分析中的 URL 以进行分析
创建带有搜索参数的可共享链接
处理国际化域名和路径
调试 Web 应用程序中的 URL 编码问题
处理重定向 URL 和联盟链接
URL Encoding Guide
Why URL Encoding?
URLs can only contain a limited set of characters (ASCII letters, digits, and some special chars). All other characters must be percent-encoded to be safely transmitted.
When to Encode
- Query parameters: Values after
? - Path segments: Parts of the URL path
- Fragment identifiers: The part after
#
Common Encodings
- Space →
%20or+(in query string) &→%26(key=value separator)=→%3D(key=value separator)/→%2F(path separator)
URL Encoding Issues
Issue: Double Encoding
Symptom: Getting %2520 instead of %20.
Cause: Encoding already-encoded data.
Fix: Only encode once. Check if your framework encodes automatically.
Issue: + vs %20 in Query Strings
Cause: Confusion between HTML form encoding and URL encoding.
Solution: For query parameters, use encodeURIComponent() which produces %20. For form submission (application/x-www-form-urlencoded), spaces become +.
Issue: Broken Chinese Characters
Cause: Not encoding non-ASCII characters properly.
Fix: Always UTF-8 encode before percent-encoding. encodeURIComponent("中文") → %E4%B8%AD%E6%96%87
URL Encoding Tips
Choose the Right Function
encodeURIComponent(): Encodes everything except ASCII letters, digits,- _ . ! ~ * ' ( )encodeURI(): Encodes everything except; , / ? : @ & = + $ - _ . ! ~ * ' ( ) #decodeURIComponent(): Decodes%XXsequences
Don't Encode These
- Scheme:
http://,https:// - Domain:
example.com - Hyphen, underscore, period, tilde
Always Encode Query Values
Never put raw user input in URLs without encoding:
// Bad
fetch('/api/users?name=' + name);
// Good
fetch('/api/users?name=' + encodeURIComponent(name));