We use cookies.This website uses essential cookies to operate core features. With your consent, we also use analytics cookies to understand traffic and improve the service. For more details, see our .
Was this tool helpful to use?
Your feedback helps us make it better
Free online tool for Escape encoding and decoding strings, making URL parameter passing and data processing easier.
当您需要在URL中安全传递包含中文、空格或特殊符号的字符串时,直接传输可能导致数据丢失或URL格式错误。本工具通过Escape编码将字符串中的每个Unicode字符转换为“%uXXXX”(如“%u4E2D”)格式,或对已编码的字符串进行反向解码,从而确保数据在HTTP请求中完整、正确地传输。Escape编码是一种针对Unicode字符的百分比编码方案,主要应用于JavaScript的全局函数中,用于处理URL中的非ASCII字符。
Hello 世界!)。Hello%20%u4E16%u754C%uFF01)。问:Escape编码和标准的URL编码(Percent-Encoding)有什么区别?
答:主要区别在于编码格式。Escape编码将Unicode字符(如中文)编码为“%uXXXX”(四字节十六进制)形式,例如“中”编码为“%u4E2D”。而标准URL编码通常将字符转换为“%XX”(两字节十六进制)形式,且对ASCII字符(如空格转为%20)处理方式更通用,是RFC标准推荐的做法。在Web开发中,通常推荐使用标准的encodeURIComponent。
问:浏览器地址栏参数应该用哪种编码?
答:推荐使用标准的URL编码(如JavaScript的encodeURIComponent)。因为Escape编码(escape/unescape)是旧规范,现代浏览器虽仍支持,但并非所有服务器端都能正确解析%uXXXX格式,可能导致参数乱码。
请注意:本工具处理的是纯文本字符串,不支持直接上传文件。输入过长的文本(如数万字符)可能导致页面响应变慢。编码结果主要用于URL参数部分,请勿用于编码整个URL。处理用户输入时,请注意原始数据中可能已包含编码字符,避免重复编码。本工具在浏览器本地运行,您的数据不会上传至服务器。
在Web前端开发中,虽然escape/unescape函数因历史原因存在,但W3C已不推荐使用。对于URL编码,应优先使用encodeURIComponent和decodeURIComponent,它们遵循RFC 3986标准,兼容性更好。一个典型场景是:当您需要将包含中文的搜索关键词“北京天气”通过GET请求传递时,使用encodeURIComponent(“北京天气”)会得到“%E5%8C%97%E4%BA%AC%E5%A4%A9%E6%B0%94”,而escape(“北京天气”)会得到“%u5317%u4EAC%u5929%u6C14”。前者是现代Web API(如fetch、axios)和服务器框架(如Node.js、PHP)普遍支持的标准格式。