URL编码解码工具

在线URL编码、URL解码转换,支持百分号编码,一键处理特殊字符

输入内容

快速示例
点击下方按钮尝试示例文本

URL编码说明

什么是URL编码?

URL编码又称百分号编码,是将特殊字符转换为%后跟两位十六进制数的格式,确保URL可以安全传输。

encodeURIComponent

本工具使用encodeURIComponent,会编码除字母、数字、- _ . ! ~ * ' ( )之外的所有字符,适合编码URL参数值。

安全字符

A-Z、a-z、0-9、- _ . ! ~ * ' ( ) 这些字符不需要编码,其他字符都应进行URL编码。

使用场景

URL参数传递

当URL参数包含中文、空格或特殊字符时,必须进行URL编码才能正确传递。

表单数据处理

处理GET/POST表单数据时,对用户输入进行URL编码,确保数据安全传输。

API接口调用

调用REST API时,对查询参数和路径参数进行URL编码,避免解析错误。

调试和测试

开发调试时,快速编码/解码URL,验证参数传递是否正确。

相关教程

深入了解Web开发和网络协议:

HTTP协议详解

理解URL在HTTP协议中的作用和编码规范

HTTPS协议详解

学习安全的HTTP通信和数据传输

DNS协议详解

了解域名解析和URL结构

关于URL 编码解码器的常见问题

URL 编码(又称百分号编码)是将特殊字符转换为%后跟两位十六进制数的编码方式。例如空格编码为%20,中文编码为%E4%B8%AD%E6%96%87。URL 编码确保 URL 在网络传输中不会被误解,因为某些字符在 URL 中有特殊含义(如?、&、=、/等)。
以下场景需要 URL 编码:1) URL 参数中包含空格、中文或其他特殊字符;2) 在查询字符串中传递包含&或=的值;3) 路径中包含非 ASCII 字符;4) 表单数据通过 GET 方法提交;5) API 接口调用时传递复杂参数。不进行编码可能导致 URL 解析错误。
encodeURI 用于编码整个 URL,保留 URL 结构字符(如://、?、&、=、/等)。encodeURIComponent 用于编码 URL 的一部分(如参数值),会编码所有特殊字符。例如:encodeURI('https://example.com/a?b=1') 保持结构不变,而 encodeURIComponent 会将所有特殊字符编码。
以下字符在 URL 中是安全的,不需要编码:字母(A-Z a-z)、数字(0-9)、以及 - _ . ~ 四个特殊字符。其他所有字符(包括空格、中文、以及! * ' ( ) ; : @ & = + $ , / ? # [ ] 等)在作为数据内容时都应该编码。
URL 编码将每个特殊字符转换为 3 个字符(%加两位十六进制数)。例如一个中文字符在 UTF-8 中占 3 个字节,编码后变成 9 个字符(%E4%B8%AD)。这是正常现象,编码的目的是确保传输安全,而非压缩数据。解码后会恢复原始长度。
使用本工具的解码功能,将编码后的字符串粘贴到输入框,点击解码按钮即可。在 JavaScript 中可以使用 decodeURIComponent() 函数;在 Python 中可以使用 urllib.parse.unquote();在浏览器地址栏中直接输入编码后的 URL 也会自动解码显示。
URL 编码用于 URL 传输,使用%加十六进制格式(如%20 表示空格)。HTML 实体编码用于 HTML 内容,使用&加实体名称或数字(如 或 表示空格)。两者用途不同,不能混用。URL 中的特殊字符用 URL 编码,HTML 内容中的特殊字符用 HTML 实体编码。