URL编码/解码

在线URL编码与解码工具,支持百分号编码(Percent-Encoding)、URI组件编码、空格转+号等多种模式。一键将中文、特殊字符转换为URL安全编码,或将编码URL还原为可读文本。适用于Web开发、API调试、URL参数拼接等场景。

输入字符数
0
输出字符数
0
编码差异
0
输入文本
输出结果
输入文本后点击「URL编码」或「URL解码」按钮

功能特性

双向编解码

支持URL编码(百分号编码)与解码双向转换,一键将中文、特殊字符转为URL安全格式,或将编码还原为可读文本。

多种编码模式

全URL编码保留:/?#&=等URL结构字符,组件编码则编码所有特殊字符,适用于query参数值等场景。

空格转+号

支持application/x-www-form-urlencoded格式,将空格编码为+号而非%20,兼容表单提交标准。

交换与复制

一键交换输入输出内容,方便连续编解码操作;结果支持一键复制到剪贴板,无缝衔接开发工作流。

字符统计

实时显示输入与输出的字符数及编码差异,直观展示编码后的体积变化,帮助评估URL长度是否超出限制。

安全本地

解码操作支持浏览器本地完成(JavaScript内置decodeURIComponent),编码优先后端处理,失败自动回退本地。

使用说明

如何使用URL编码解码工具?

  • 在输入框中粘贴要处理的文本或URL。
  • 根据需要选择编码模式:「全URL编码」保留URL结构字符,「空格转+号」兼容表单提交格式。
  • 点击「URL编码」按钮将文本转换为百分号编码格式,点击「URL解码」按钮将编码还原。
  • 点击「交换」按钮可将输出内容移至输入框,方便连续编解码操作。
  • 点击「复制」按钮将结果复制到剪贴板,或点击「清空」按钮重置输入输出。

编码模式说明

  • 全URL编码(默认开启):使用Uri.EscapeUriString,保留URL结构字符(:/?#[]@!$&'()*+,;=),仅编码非ASCII字符和空格。适合编码完整URL。
  • 组件编码(关闭全URL编码):使用Uri.EscapeDataString,编码所有特殊字符包括URL结构字符。适合编码URL的query参数值、路径片段等。
  • 空格转+号:将空格编码为+而非%20,符合application/x-www-form-urlencoded规范,常用于表单POST提交。

典型使用场景

  • URL参数拼接:将中文搜索关键词、用户输入等编码后拼接到URL查询字符串中,避免乱码和解析错误。
  • API调试:编码REST API请求中的路径参数和查询参数,确保特殊字符正确传输。
  • SEO链接处理:将含中文的URL编码为搜索引擎友好的格式,或解码分析竞品URL结构。
  • 前端开发:验证encodeURIComponentencodeURI的编码结果,排查URL编码不一致问题。
  • 数据迁移:批量解码URL编码的数据库字段内容,或编码导出数据中的特殊字符。

常见问题

URL编码和URI组件编码有什么区别?
URL编码(encodeURI/EscapeUriString)保留URL结构字符(:/?#&=等),仅编码非ASCII字符和空格,适合编码完整URL。URI组件编码(encodeURIComponent/EscapeDataString)会编码所有特殊字符,适合编码URL的某个部分(如参数值),确保特殊字符不会破坏URL结构。
空格应该编码成%20还是+号?
两者都是合法的空格编码。%20是标准的百分号编码,适用于URL的路径部分。+号是application/x-www-form-urlencoded规范的空格表示方式,主要用于表单POST提交的query字符串。在URL路径中使用+号会被当作字面量加号而非空格,因此需要根据场景选择。
为什么中文URL在浏览器地址栏显示为原始文字?
现代浏览器(Chrome、Firefox、Edge等)会自动将地址栏中的百分号编码URL解码为可读的Unicode文字显示,以提高用户体验。但在实际HTTP请求中,浏览器仍会发送编码后的URL。使用本工具可以查看URL的实际编码形式。
解码时+号会被转换成空格吗?
是的。本工具的解码功能遵循application/x-www-form-urlencoded规范,将+号解码为空格。如果原始文本中包含字面量+号(如数学表达式),编码时应使用%2B表示,这样解码时不会误转为空格。
本工具是免费的吗?数据会被存储吗?
完全免费,无需注册登录。解码操作在浏览器本地完成(JavaScript内置函数),不向后端传输数据。编码操作通过后端API处理,但仅在请求过程中传输,不会被持久化存储,保护您的数据隐私。
编码后URL变长了正常吗?
正常。URL编码将每个非ASCII字符转换为%XX格式的3个字符(UTF-8多字节字符可能产生多个%XX序列)。例如,一个中文字符在UTF-8下占3字节,编码后变为9个字符。工具的「编码差异」统计可直观显示编码前后的字符数变化。