公司的Spring框架接受MIME类型为json格式的带null的字符串,然后这个带null的字段被自动忽略了,排查了好久
创始人
2024-11-15 16:05:45
0

接收方法:

解决方案:

先去掉@RequsetBody 因为使用@RequsetBody时,框架会调用HttpMessageConvert读取HttpRequest的InputStram反序列化为对象,这个InputStram只能读一次。 后续你的代码再通过Reader读输入流时,已经没有内容了,就会异常

然后用下面的方法手动去读http里面的字符串

   //这个方法不会用到公司的框架,很彻底的解决了问题    public String getRequestString(ApiReq apiReq, HttpServletRequest request) {         String body = "";         try (InputStream inputStream = request.getInputStream()) {             ByteArrayOutputStream outputStream = new ByteArrayOutputStream();             byte[] bytes = new byte[1024];             int len;             while ((len = inputStream.read(bytes)) != -1) {                 outputStream.write(bytes, 0, len);             }             body = outputStream.toString(request.getCharacterEncoding());         } catch (Exception e) {             e.printStackTrace();             // throw new BizException("M999", "华润通知读取失败:" + e.getMessage());         }         return body;     }      //这个方法会用到公司的框架     public String getRequestString2(ApiReq apiReq, HttpServletRequest request) {         StringBuilder body = new StringBuilder();         try (BufferedReader reader = request.getReader()) {             String line;             while ((line = reader.readLine()) != null) {                 body.append(line);             }         } catch (Exception e) {             e.printStackTrace();            // throw new BizException("M999", "华润通知读取失败:" + e.getMessage());         }         return body.toString();     }

最后用的getRequestString方法,可以接受MIME为 json和Text 以及其他格式的字符串且不会自动忽略null

相关内容

热门资讯

总算清楚“打哈儿辅助安卓系统”... 总算清楚“打哈儿辅助安卓系统”讲解开挂作弊辅助挂(起初真的有挂);打哈儿辅助安卓系统简单的灵活控制,...
科技介绍!微乐小程序多功能修改... 您好,微乐小程序多功能修改器这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多...
总算明白“微信小程序欢乐辅助器... 总算明白“微信小程序欢乐辅助器免费下载”揭秘开挂作弊辅助助手(往昔是有挂)是一款可以让一直输的玩家,...
新手必备!拱趴游戏辅助器,微乐... 新手必备!拱趴游戏辅助器,微乐家乡麻辣自建房辅助app,必赢教程(有挂教程);亲真的是有正版授权,小...
普及知识“微信小程序透视工具”... 普及知识“微信小程序透视工具”普及开挂作弊辅助黑科技(最初存在有挂);暗藏猫腻!微信小程序透视工具软...
揭秘一下!哥哥打大a有辅助,微... 揭秘一下!哥哥打大a有辅助,微信边锋辅助软件,揭秘教程(有挂秘籍);1.微信边锋辅助软件 ai辅助创...
重大来袭“闲来潮汕辅助”解谜开... 《重大来袭“闲来潮汕辅助”解谜开挂作弊辅助神器(一直真的有挂)》 闲来潮汕辅助软件透明挂更新公告新增...
实测揭晓!黑科技透视工具,兴动... 实测揭晓!黑科技透视工具,兴动助手脚本,安装教程(有挂助手)是一款可以让一直输的玩家,快速成为一个“...
实测教程“至友互娱情怀辅助软件... 实测教程“至友互娱情怀辅助软件”科普开挂作弊辅助器(原本存在有挂);大家肯定在之前至友互娱情怀辅助软...
分享认知!凑一桌辅助软件免费,... 分享认知!凑一桌辅助软件免费,广西友玩修改器,扑克教程(有挂方式);一、凑一桌辅助软件免费有挂的是的...