为何网址中会出现%20和%3D?
从浏览器的地址栏到后端日志,你经常看到类似“%E5%8C%97%E4%BA%AC”或“q=%E6%89%8B%E6%9C%BA&type=1”的字符串。这些由百分号后跟两位十六进制字符构成的序列,源自RFC 3986定义的百分号编码机制。URL在设计之初只允许ASCII字符集中的一部分“安全字符”。如果请求地址中包含中文、空格或者“&”、“=”这类在URL里有特殊含义的字符,就必须把它们转换为一种通用、无损的表现形式。例如,空格会编码为“%20”,等号会变成“%3D”,中文字符“中”则会被编码为“%E4%B8%AD”。当你需要分析广告着陆页的查询参数、从服务器日志里提取用户搜索词,或者调试支付回调中夹杂的中文参数时,直接阅读这种密文几乎不可能。URL编码正是这一过程的逆操作,它把这些百分号序列重新转换成人可读的文字,这就是URL解码工具的核心价值。理解编码的由来,才能更好地利用解码提升排障效率。