公司的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

相关内容

热门资讯

查到实测!德州ai智能系统(a... 1、查到实测!德州ai智能系统(ai代打)2025新版教程(2021已更新)(哔哩哔哩);代表性(透...
黑科技安卓版(WePoKe)德... 黑科技安卓版(WePoKe)德州app系统(智能ai)本来是真的有挂(2022已更新)(哔哩哔哩)1...
黑科技辅助(wepokeai代... 黑科技辅助(wepokeai代打逻辑)外挂透明挂辅助插件(透视)原来是真的有挂(有挂分析)-哔哩哔哩...
热点讨论!德州扑克线上ai代打... 热点讨论!德州扑克线上ai代打(ai代打)解说技巧(2022已更新)(哔哩哔哩)是一款可以让一直输的...
黑科技挂黑科技(WePoKe)... 黑科技挂黑科技(WePoKe)wepoke最新下载地址(透明挂)原来存在有挂(2024已更新)(哔哩...
黑科技软件(wepoke游戏辅... 黑科技软件(wepoke游戏辅助工具)外挂透明挂辅助助手(透视)果然存在有挂(有挂讲解)-哔哩哔哩1...
必看攻略!!来玩德州app外挂... 必看攻略!!来玩德州app外挂(ai辅助)2025教程(2024已更新)(哔哩哔哩)来玩德州app外...
黑科技工具(WePoKe)we... 黑科技工具(WePoKe)wepoke软件透明挂(智能ai)切实是真的有挂(2026已更新)(哔哩哔...
黑科技ai(德扑线上有机器人吗... 黑科技ai(德扑线上有机器人吗)外挂透明挂辅助工具(透视)本来是真的有挂(有挂方法)-哔哩哔哩1)德...
研究成果!wepoke系统(透... 研究成果!wepoke系统(透视)教你攻略(2026已更新)(哔哩哔哩),您好,wepoke系统这款...