工具用的顺手吗?
你的反馈能帮助我们做得更好
在线工具,用于字符串的Escape编码与解码,便于URL传参和数据处理。
概览
了解工具能解决的问题、计算或处理逻辑,以及数据边界。
中文“中”在 Escape 输出中写作 %u4E2D,而标准 URL 百分号编码会把其 UTF-8 字节表示为 %E4%B8%AD。页面的编码和解码模式对应 JavaScript 的 escape() 与 unescape() 传统格式,不是加密算法。
ECMAScript 规范按字符串代码单元处理字符:被替换的单元数值不大于 0x00FF 时使用 %xx;大于该值时使用 %uxxxx。字母、数字和部分 ASCII 符号保持原样。例如输入 Hello 你好 会得到 Hello%20%u4F60%u597D。
例如感叹号会变成 %21,空格会变成 %20;字母、数字、@、*、_、+、-、.、/ 等字符保持原样。字符 é 的代码单元数值小于 256,所以此规则输出 %E9;UTF-8 URL 编码则会表示为 %C3%A9,两种输出不能混用。
RFC 3986 将百分号编码定义为一个百分号加两个十六进制数字来表示一个数据字节;URL Standard 则描述按 UTF-8 产生百分号字节序列。Escape 的 %u4E2D 是四位代码单元形式,不是 RFC 3986 的 %HH 字节组,因此不同服务器或程序未必会按同一规则还原。
若目标是把文本作为 URI 的一个参数值,通常应选用遵循 URI 组件规则的标准编码方式,例如 JavaScript 的 encodeURIComponent()。完整 URL 含有路径、问号和分隔符,不能把整条 URL 当普通参数值再重复编码。
指南
按步骤完成操作,并通过示例核对输入与结果。
需要把原文变成 Escape 序列时选“编码”;手上已有 Escape 字符串并要恢复文本时选“解码”。
把纯文本或待还原的序列放入输入框,也可使用示例或清空输入。结果会随模式和输入内容自动更新。
检查输出中的 %xx 或 %uxxxx 片段,再复制结果用于兼容旧格式的文本交换。若接收端采用 RFC 3986/UTF-8,应先确认其需要的编码规则。
场景
查看这项工具在不同工作与生活流程中的用法。
维护旧脚本或旧系统导出的字符串时,可把其中的 Escape 序列解码为可读文本,核对字段内容后再按新接口要求转换格式。
开发者收到含 %uXXXX 的日志或样本时,可解码查看原文,并与目标系统采用的 UTF-8 百分号编码区分,避免把格式差异误判成加密内容。
问答
集中解答高频疑问与容易混淆的问题。
不是。它是 Escape 的四位代码单元形式;RFC 3986 中的百分号编码字节写作 % 加两位十六进制数。接收系统若只按 UTF-8 URL 规则解析,可能不会识别 %uXXXX。
一般不应把 Escape 当作通用参数编码。单个查询参数值可使用符合 URI 组件规则的编码方式,例如 encodeURIComponent;编码前先分清参数值和 URL 自身的 ?、&、= 等结构字符。
可以用同一 Escape 规则编码和解码。一个补充平面字符在 UTF-16 中由两个代码单元组成,因此输出可能呈现为两个连续的 %uXXXX 片段;它与 UTF-8 字节序列仍是不同格式。
须知
使用前了解适用范围、结果限制与必要提醒。
Escape 只是文本表示转换,不提供机密性、完整性或身份验证,不应用来保护密码、令牌或其他敏感值。编码结果也不保证可被所有 URL、HTTP 服务或后端语言接受;先按接收端协议选择编码,并避免把已经编码的内容重复转换。
推荐
查找相关工具、专题与可用的 API 能力。