编码模式
标准模式使用 encodeURIComponent / decodeURIComponent;表单模式会将空格编码为「+」。
原文
结果
输入内容后,编码 / 解码结果会实时显示在这里。
编码对照
原文中需要转义的字符逐个列出,方便核对编码规则与 UTF-8 字节。
历史记录
转换记录只保存在你自己浏览器的 localStorage(最多 {n} 条),点击条目可回填原文、模式与操作。
功能特性
- 两种模式一键切换:标准模式严格按 RFC 3986 的 encodeURIComponent 规则,表单模式按 application/x-www-form-urlencoded 把空格编码成 +。
- 输入即出结果:编码和解码都是实时完成,中文、emoji 与 &、#、?、=、空格等特殊字符自动正确处理,无需点击按钮。
- 编码对照表:逐字符列出原文里哪些字符被转义、转义成什么、占用几个 UTF-8 字节,看得见编码规则本身。
- 字符与字节统计:原文与结果同时给出字符数与 UTF-8 字节数,接口签名、请求体体积这类场景可以直接读数。
- 历史记录:最近 20 条转换记录存在浏览器本地,点击任意一条即可回填原文与设置,另可一键清空。
- 纯前端本地计算:所有转义与还原都在你的浏览器里完成,文本不上传、不留存,界面支持简体 / 繁體 / English。
使用方法
- 在「编码模式」里选标准模式或表单模式——签名参数、URL 片段拼接用标准模式;要提交 application/x-www-form-urlencoded 请求体时用表单模式。
- 在「操作」里切「编码 / 解码」,把文本粘贴进「原文」框,结果立即出现在下方,点「复制结果」带走。
- 点「示例」载入一段含中文、空格、&、#、? 的样例文本;编码后看「编码对照」即可明白每个字符为什么被转义。
- 解码报错时先确认百分之百是合法的百分号编码:% 后必须跟两位十六进制数字,多行粘贴偶尔会带入换行或空格导致失败。
常见问题
- encodeURIComponent 和 encodeURI 有什么区别?
- encodeURI 只转义 URI 里不允许出现的字符,保留 : / ? # & = 等结构符号,适合转整个 URL;encodeURIComponent 除 A-Z a-z 0-9 - _ . ! ~ * ' ( ) 之外全部转义(包含 : / ? # & = 空格与中文),适合转 URL 的单个参数值。拼接请求参数、把内容塞进 URL 时用 encodeURIComponent 更安全,本工具标准模式就是它。
- 表单模式(x-www-form-urlencoded)和标准模式差在哪?
- 差别就在空格:标准模式把空格转义成 %20,而 HTML 表单提交规范(application/x-www-form-urlencoded)要求空格编码成 +。两种写法的含义相同(%20 与 + 都表示空格),但服务端按不同规范解析:解析表单体时见 + 转空格,解析 URL 路径与查询参数时有的框架会把 + 也当空格、有的不会,所以参数值要带空格时首选 %20,模拟表单提交时用 +。
- 解码报「URI malformed」是怎么回事?
- decodeURIComponent 要求 % 后面紧跟两位十六进制数字(0-9 a-f A-F)。字符串里出现 % 后不是合法十六进制、或 %XX 形成的字节序列不是合法的 UTF-8 编码时,浏览器就会抛 URIError。常见来源:把已经解码过的文本再解一次、中文文本被截断、或从富文本编辑器粘贴时带入了不可见字符。
- 中文和 emoji 编码后为什么变成长串的 %XX?
- URL 里只允许 ASCII 字符,非 ASCII 字符要先按 UTF-8 编码成字节,再把每个字节写成 %XX。一个中文字符占 3 个 UTF-8 字节所以是 %E4%B8%AD 这样的 9 个字符,emoji 占 4 个字节更长。这也是为什么 URL 里出现中文需要先编码——解码后它们会原样还原回来。
- 我粘贴的内容会上传吗?
- 不会。编码、解码、统计、对照表全部由页面里的 JavaScript 在你自己的浏览器内存中完成:本页是纯静态页面、没有任何后端接口,文本不会发出浏览器。历史记录只写在你设备自己的 localStorage 里(最多 20 条),可以随时一键清空。
关于本工具
URL 编码解码是一个纯前端的在线工具:输入文本,按「标准(encodeURIComponent)」或「表单(x-www-form-urlencoded)」两种规则实时给出结果,并附字符/字节统计、逐字符编码对照与本地历史记录。它解决的是前端开发、API 调试与爬虫场景里最常遇到的那类问题:中文字符、空格、&、#、? 一放进 URL 就出错。
转义引擎直接调用浏览器内置的 encodeURIComponent / decodeURIComponent(标准模式)与空格到 + 的替换(表单模式),没有第三方库、没有后端、没有统计脚本;所有输入输出都只存在于你自己的浏览器会话里。界面支持简体 / 繁體 / English。
站内其他工具
纯前端计算 · 浏览器本地处理 · 免费 · 支持中/繁/英