输入 (原文)
字符: 0
大小: 0 B
输出 (已转义)
字符: 0
大小: 0 B
比率: —
字符串转义 & 反转义 — JSON、XML、HTML、SQL、URL
转义做了什么?
每种基于文本的格式都有具有保留含义的字符——JSON 里的引号、HTML 和 XML 里的尖括号、SQL 字符串字面量里的单引号、URL 里的百分号。转义把这些字符替换成安全的等价形式,让字符串被当作数据处理,而不是被解析为标签或语法。选错转义格式正是 bug 和注入漏洞潜入的途径。
如何使用
- 选择 转义 或 反转义。
- 选目标格式:JSON、XML、HTML、SQL 或 URL。
- 输入或粘贴字符串——转换实时完成。
- 按 示例 加载对应格式的示例。
- 按 互换 把输出送回输入再次处理。
常见问题
应该选择哪种格式?
根据字符串最终的去处选择格式。嵌入 JSON 数据?选 JSON。放进 XML 属性?选 XML。在 HTML 页面中显示?选 HTML。构造 SQL 字面量(仅在无法使用参数化查询时)?选 SQL。作为 URL 查询参数发送?选 URL。
JSON 转义和 HTML 转义有什么区别?
JSON 转义会破坏 JSON 语法的字符(引号、反斜杠、控制字符),使用 \" 和 \n 这样的反斜杠序列。HTML 转义会被解析为标记的字符(<、>、& 和引号),使用 <、& 这样的命名或数字实体。两者不能互换:把 JSON 转义后的文本粘贴到 HTML 中仍然存在 XSS 风险。
SQL 转义足以防止 SQL 注入吗?
不够。SQL 转义(双写单引号、转义反斜杠)能覆盖常见情况,但各数据库在编码、注释语法、NULL 字节等边界情况上各不相同。参数化查询(预处理语句)才是唯一可靠的防御。本工具适合在开发中检查或构造字面量,不能作为生产环境的注入防护。
为什么 JSON 转义模式会把输入变成一行?
JSON 转义生成的是 JSON 字符串值的内容:换行变为 \n,制表符变为 \t,引号变为 \"。结果就是放在 JSON 字符串双引号内的内容。如需完整的 JSON 字符串字面量,请自行在结果两侧加上引号。
这个工具会把我的数据发送到服务器吗?
不会。所有转义和反转义都在浏览器中用 JavaScript 完成,输入不会离开您的设备。