URL编码/解码工具

支持URL编码和解码转换,包括encodeURI和encodeURIComponent两种方式

使用说明
  • encodeURI()是Javascript中用来对URL编码的函数。它着眼于对整个URL进行编码,因此除了常见的符号以外,对其他一些在网址中有特殊含义的符号"; / ? : @ & = + $ , #",也不进行编码。编码后,它输出符号的utf-8形式,并且在每个字节前加上%。
  • encodeURIComponent()与encodeURI()的区别是,它用于对URL的组成部分进行个别编码,而不用于对整个URL进行编码。因此"; / ? : @ & = + $ , #",这些在encodeURI()中不被编码的符号,在encodeURIComponent()中统统会被编码。至于具体的编码方法,两者是一样。

关于URL编码

URL编码(Percent-encoding)是将URL中的特殊字符转换为百分号加十六进制数字的格式,确保URL能够在互联网上正确传输。URL中的某些字符具有特殊含义(如?、&、=等),中文和其他非ASCII字符也需要编码才能在URL中使用。

本工具提供encodeURI和encodeURIComponent两种编码方式,帮助开发者正确处理URL中的特殊字符和中文字符,解决URL传参乱码问题。

使用说明

  1. 在"原始URL"框中输入需要编码或解码的URL
  2. 点击"编码"按钮,工具会同时显示encodeURI和encodeURIComponent的结果
  3. 点击"解码"按钮,工具会自动解码编码后的URL
  4. encodeURI适用于编码完整的URL
  5. encodeURIComponent适用于编码URL的参数部分

应用场景

  • URL参数传递:对URL参数中的中文和特殊字符进行编码
  • API调用:在API请求中正确传递包含特殊字符的参数
  • 表单提交:处理表单中的中文输入
  • 链接分享:确保分享的链接在各种平台上都能正常访问
  • 搜索功能:对搜索关键词进行编码
  • 重定向:在URL重定向时保持参数的正确性

两种编码方式的区别

  • encodeURI:不编码URL中的特殊字符(; / ? : @ & = + $ , #),适合编码完整URL
  • encodeURIComponent:编码所有特殊字符,适合编码URL参数值
  • 使用场景:编码完整URL用encodeURI,编码参数值用encodeURIComponent
  • 示例:encodeURI("http://example.com?name=张三") vs encodeURIComponent("name=张三")