输入URL或文本,一键完成URL编码与解码,支持中文和特殊字符。纯本地运行,数据不上传,保护隐私。
前端传参时直接把中文拼进URL,后端收到的却是 %E4%B8%AD%E6%96%87 这种乱码。或者反过来,API返回的数据里带了一堆 %xx,需要还原成可读文字。URL的标准只允许ASCII字符,中文、空格、&、? 这些字符如果不做编码处理,轻则参数解析错误,重则请求直接失败。这个工具帮你快速在编码和解码两个方向之间切换,不用写代码就能完成转换。
调试API时对方返回的URL参数被编码了,需要解码看原始内容。做SEO时需要处理中文URL,确认编码后的形式是否正确。前端开发中拼接带中文参数的URL,需要先编码再发送。爬虫开发时解析网页中的编码链接。跨境电商处理多语言商品链接时验证编码是否正确。
选择「编码」或「解码」模式,在左侧输入框中输入要转换的文本,右侧会实时显示转换结果。点击「复制结果」按钮可一键复制到剪贴板。点击「交换」按钮可将输出内容移到输入框,方便反向操作。默认使用 encodeURIComponent 方式编码,这也是日常开发中最常用的方式。
encodeURIComponent 会编码除字母、数字、- _ . ! ~ * ' ( ) 外的所有字符,适合编码参数值%20,但在表单提交的 application/x-www-form-urlencoded 格式里空格会变成 +,两者不是一回事%E4%B8%AD两者的出发点完全不同。URL编码是为了让中文、空格等字符能在URL里安全传输,编码后的样子是 %E4%B8%AD 这种百分号加两位十六进制。Base64则是把二进制数据(比如图片、音频)变成纯字母数字串,编码后是 SGVsbG8= 这种带加号、斜杠和等号的格式。简单说,URL编码处理的是「URL里不能直接出现的字符」,Base64处理的是「不是文本的二进制数据」。
这取决于用的是哪套编码规范。RFC 3986标准规定空格编码为 %20,这是URL路径和查询参数中的标准做法。但在HTML表单提交时,浏览器使用的是另一套叫 application/x-www-form-urlencoded 的格式,这种格式里空格被编码为 +。你在浏览器地址栏里看到的通常是 %20,而在POST表单数据里看到的是 +。本工具使用标准的 %20 方式。
看你要编码的是完整URL还是URL里的一个参数值。encodeURI 会跳过 : / ? # [ ] @ 这些URL结构中有特殊含义的字符,所以适合编码一整条URL。而 encodeURIComponent 会编码所有特殊字符,适合编码参数值——比如 ?name=encodeURIComponent("a&b"),否则 & 会被当成参数分隔符。本工具默认用 encodeURIComponent,因为它在日常开发中使用频率最高。
主流搜索引擎都能正确识别中文URL,百度和Google都会把编码后的 %E4%B8%AD%E6%96%87 还原成中文来理解。从用户体验角度,中文URL在地址栏里显示时可能会被编码成一长串百分号,不够美观。如果要用中文URL,建议保持简短、包含关键词即可。也可以考虑用拼音替代,兼顾可读性和SEO。
解码失败通常是因为输入内容不是合法的编码字符串。按顺序排查:第一,有没有不完整的%XX序列,比如 %E4 后面断了;第二,百分号后面跟着的不是合法的十六进制字符(只允许0-9和A-F/a-f),比如 %GG 就不对;第三,输入里是否混入了未经编码的原始字符。把这些问题修掉后重新粘贴即可。