URL 编码器 & 解码器

轻松编码或解码 URL 字符串和组件。我们的工具使用 encodeURIComponent 进行安全的基于浏览器的处理。非常适合处理查询字符串和特殊字符的开发人员。

广告
广告

URL 编码/解码器在纯文本和 URL 安全格式之间转换文本。URL 编码(也称百分号编码)将空格、与号和非 ASCII 字符等特殊字符替换为百分号前缀的十六进制代码(如空格变为 %20)。这确保 URL 在浏览器和 API 中正确工作。解码反转此过程。此工具在浏览器中即时处理两种操作。

编码和解码 URL,不发送数据到任何地方

使用 encodeURIComponent 确保最大安全性。处理查询字符串、路径段和特殊字符——全部在浏览器中本地完成。无需上传,无限制。

100% 客户端
即时结果
免费无限

使用步骤

  1. 1

    粘贴您的字符串

    在“输入字符串”字段中输入您要处理的文本或完整 URL。

  2. 2

    选择操作

    点击“编码”按钮将特殊字符转换为百分号编码格式,或点击“解码”将其恢复为原始形式。

  3. 3

    复制结果

    处理后的字符串将显示在“输出”字段中。点击“复制结果”按钮将其保存到您的剪贴板。

为什么 URL 编码是必要的?

仅限 ASCII 字符

URL 只能包含 ASCII 字符集中的特定字符。该集之外的任何字符都必须进行编码。

保留字符

在 URL 中具有特殊含义的字符(如 `&` 或 `?`)必须进行编码,以避免被服务器误解。

数据完整性

编码确保在 URL 中传递的参数(例如搜索查询)被正确解释为数据,而不是 URL 结构的一部分。

广告

了解 URL 编码

什么是 URL 编码以及为什么需要它?

URL 最初设计用于在互联网上传输 ASCII 文本。URL 规范为特殊目的保留某些字符:? 分隔路径和查询字符串,& 分隔参数,= 分隔键和值,# 标记片段,/ 分隔路径段。当这些字符出现在 URL 的数据部分时,必须编码以避免被解释为结构分隔符。

URL 编码(百分号编码)将每个保留或非 ASCII 字符替换为百分号 (%) 后跟两个十六进制数字,表示字符的字节值。例如,空格变为 %20,与号变为 %26,斜杠变为 %2F。非保留集(A-Z、a-z、0-9、连字符、下划线、句点、波浪号)中的字符从不编码。JavaScript 函数 encodeURIComponent() 处理此编码,decodeURIComponent() 反转它。

现代 URL 还需要处理 Unicode 字符(表情符号、中日韩字符、带重音字母)。这些首先编码为 UTF-8 字节,然后每个字节被百分号编码。浏览器和服务器在您键入 URL 或提交表单时自动处理此编码,但开发人员在构建 API 端点、重定向 URL 或数据 URI 时通常需要手动编码或解码 URL。

广告

URL 编码的常见用例

URL 编码在通过 URL 传递数据的 Web 应用中至关重要。常见场景包括:构建 API 查询参数、创建包含原始 URL 作为参数的重定向 URL、为嵌入图片或字体生成数据 URI、编码带主题和正文的电子邮件链接。OAuth 流程也大量依赖 URL 编码来处理状态参数和回调 URL。

一个常见错误是双重编码——编码已编码的字符串。例如,编码 %20 会产生 %2520(百分号本身被编码为 %25)。如果不确定字符串的当前状态,始终先解码再重新编码。另一个常见问题是使用 encodeURI() 而不是 encodeURIComponent()——encodeURI() 不编码 ?、& 和 = 等保留字符,使其不适合编码参数值。

广告

与其他 URL 编码器的对比

流行的 URL 编码工具的并排对比。

功能NovaToolsURL-Encoder.ioMeyerWeb
编码+解码合一两种模式仅编码
输入时实时转换即时提交按钮
处理 Unicode/表情UTF-8有限
隐私(无上传)100% 本地服务器端
一键复制
离线工作(静态页面)

我们的工具在浏览器中执行所有编码和解码——您的文本从不发送到服务器,对于包含令牌或会话 ID 等敏感参数的 URL 是安全的。

常见问题

什么是 URL 编码?
URL 编码,也称为百分号编码,是一种将 URL 中具有特殊含义的字符(如空格、'&'、'?'、'#')转换为可通过互联网传输的安全格式的机制。每个特殊字符都由一个 '%' 符号后跟其两位十六进制代码替换。
我的数据会被发送到服务器吗?
不会。此工具完全在您的网络浏览器中运行。您的数据从未上传或存储在任何服务器上,确保 100% 的隐私和安全。
encodeURI() 和 encodeURIComponent() 有什么区别?
此工具使用 `encodeURIComponent()`,它通常更安全、更彻底。它会编码对 URL 结构至关重要的保留字符(如 `/`、`?`、`&`、`#`),以确保它们被视为文字文本,而 `encodeURI()` 则会保留它们。
何时需要使用 URL 编码?
当您在 URL 中包含超出 ASCII 字符集或在 URL 语法中具有特殊含义的字符时,需要进行 URL 编码。常见场景包括:编码搜索查询参数、编码 URL 中的电子邮件地址或用户名、在查询字符串中传递 JSON 或 base64 数据、编码国际字符 (UTF-8) 和构建带嵌套参数的重定向 URL。在 JavaScript 中以编程方式构建 URL 时,始终对动态值使用 encodeURIComponent()。
哪些字符需要编码?
需要编码的字符包括:在 URL 中具有特殊含义的保留字符(;、,、/、?、:、@、&、=、+、$、#)、可能被误解的不安全字符(<、>、"、{、}、|、^、~、[、])和非 ASCII 字符。空格始终编码为 %20。百分号本身 (%) 必须编码为 %25。
此工具可以处理 Unicode 和国际字符吗?
可以。工具使用 encodeURIComponent(),正确使用 UTF-8 百分号编码来编码 Unicode 字符。例如,中文字符你编码为 %E4%BD%A0,表情符号编码为 %F0%9F%8E%89。解码时,工具使用 decodeURIComponent() 将百分号编码的字节转换回原始 UTF-8 字符。
为什么解码后的 URL 看起来与原始不同?
这可能因为几个原因。首先,输入中的 + 字符不会被 decodeURIComponent() 转换为空格——它们保持为字面量 + 号。如果需要解码 + 表示空格的表单编码数据,请先替换 + 为 %20。其次,如果原始 URL 使用不同字符集编码,解码后的字符可能显示为乱码。第三,双重编码会产生 %2520 而不是 %20。
此工具可以处理 Base64 编码吗?
此工具专注于 URL 编码,不是 Base64 编码。但两者经常一起使用:您先 Base64 编码二进制数据(如图片或令牌),然后 URL 编码结果以安全地包含在 URL 中。如果需要 Base64 编码,请使用我们的专用 Base64 编码/解码器工具。

您的隐私是我们的优先事项

此工具完全在您的浏览器中运行。您的文件不会被上传到服务器、存储或分析。

  • 我们不上传、不存储、不分析您的文件。
  • 您处理的一切都保留在您的设备上。
  • 没有服务器端处理、没有云存储、没有分析。

即使您的互联网连接断开,您的文件也是安全的。

你可能还喜欢

相关指南

广告