几个 P7,P8 半年未解决的乱码问题
About 326 wordsAbout 1 min
2021-07-06
之前领导给我一个问题,说线上有个乱码问题,让我解决一下,说话语气很轻松,我也以为是个小问题。我就是问了一下当事人,当事人说提交的信息偶尔会有乱码,并不是所有内容都是,可能是内容某一个地方乱码。如果修改提交信息,乱码可能消失。
先说一下结果吧,我当时对这个系统不了解,努力寻找,花了一早上找到并解决了。但之后听当事人说,这个问题有半年了,没人解决,只能每天靠手工更改数据库。
找到的代码如下,你能看出来为什么乱码了么?
private JSONObject getRequestParamJson(ServletRequest request) throws IOException {
StringBuilder sb = new StringBuilder();
try(ServletInputStream inputStream = request.getInputStream()){
byte[] b = new byte[1024];
int temp;
while((temp = inputStream.read(b)) != -1){
sb.append(new String(b, 0, temp, "UTF-8"));
}
}catch(IOException e){
log.error(e.toString());
}
return JSONObject.parseObject(sb.toString());
}
我想 P7,P8 没解决,一方面是他们已经很久没关注代码了,二是这个是微服务架构,中间环节有问题很难查找,三就是我非常佩服的,他们甩锅能力一留的强,甩了几个月,甩到我头上了!