URL 编码 / 解码

encodeURI · encodeURIComponent · Base64 · 浏览器端处理,数据不上传

* 「参数用」= encodeURIComponent(/ ? & = 一并转义,适合拼接参数值);「整条 URL」= encodeURI(保留 URL 结构符,适合完整链接)。 本工具在浏览器本地处理,数据不上传服务器。

两种编码模式怎么选

Encode Modes

参数用:encodeURIComponent

把 / ? & = # 等结构符一并转义,适合编码「参数值」:搜索词、SKU、回跳地址等拼进 query string 的内容,避免符号打断 URL 结构。

整条 URL:encodeURI

保留协议、路径分隔与 ?&= 结构符,只转义中文、空格与特殊字符,适合处理「整条已拼好的链接」,如给含中文路径的落地页做转义。

拉美字符天然支持

西语葡语变音字符(á é í ñ ç ã õ)与中文一样按 UTF-8 百分号编码,平台接口、广告 UTM 参数带当地语言关键词时直接粘贴即可。

Base64 顺手带走

简单凭据头、webhook 透传字段常用 Base64;本页按 UTF-8 编解码,中文与变音字符不会变问号(比直接 btoa 更稳)。

常见问题

FAQ
为什么链接里的中文变成 %E5%BC%80 这种?
这是 URL 编码(百分号编码):中文按 UTF-8 每字节转成 %XX 形式,%E5%BC%80 对应「开」。浏览器地址栏会自动显示还原后的字符,但复制出来或日志里常见编码形态,粘贴到本页点「解码」即可还原。
encodeURIComponent 和 encodeURI 该用哪个?
编码参数值用 encodeURIComponent:它会把 / ? & = 也转义,不会破坏 query 结构;处理整条已拼好的 URL 用 encodeURI:保留这些结构符,只转义中文与特殊字符。选错常见后果是参数里的 & 被误当分隔符截断。
解码报错或结果乱码是怎么回事?
多半是内容不是完整的百分号编码(被截断的 %XX),或原编码不是 UTF-8(旧系统 GBK 输出 %BF%AA 之类)。本页按 UTF-8 解码,GBK 内容需先转码;页面会给出具体错误提示。
Base64 是加密吗?
不是。Base64 只是编码转换,任何人都能还原,不能当加密用;它用于让二进制或特殊字符安全通过文本通道(如 HTTP 头、JSON 字段)。敏感信息请用真正的加密方案。