查询参数只应在边界位置完成一次解码



网页标题或查询词出现乱码,通常不是内容本身损坏,而是同一组字节被另一种字符集解释。乱码首次出现的位置,决定了后续📢应检查的配置。



测试时应记录原始地址、框架解析后的参数值和业务函数收到的最终值。若地址中的中文被编码成百分号序列,这是正常的传输形式;若服务端日志中仍保留百分号序列,说明参数可能没有被解码;若日志中出现替换符号,🔍则说明异常可能发生在更早的字符集转换环节。



接口排查应固定一组包含中文、空格、百分号和特殊符号的测试值,分别通过浏览器、命令行工具和程序客户端发送。只有在输入、请求原文、服务端解析结果和响应结果都被保存后,才能判断是客户端构造🌺错误还是服务端解码错误。



URL 参数乱码重点排查重复编码和重复解码



数据库中的目标文字写🎇入后变成问号,通常✨意味着字符在入库前已经无法被当前连接转换;如果数据只是读取时异常,则更可能是连接字符集或客户端显示设置不一致。



举报/反馈