在从 HttpServletRequest 映射到 parameterMap 之前获取帖子正文

问题描述

我正在尝试使用 application/x-www-form-urlencoded media-type 读取 Http post 请求的正文,但我尝试的所有内容均未成功。

我需要通过比较散列(作为标头发布)和我使用请求正文计算的散列来验证在通信期间请求没有更改。

问题是到达我的服务器的请求没有任何主体,只有参数映射。 我尝试在早期阶段通过使用过滤器(我确实用它来缓存请求的主体)来拦截请求,但它已经没有主体只是参数映射。

我试图处理这个映射以获得一个字符串来计算散列,但 websphere 重新排序参数并且散列不匹配,所以我认为最好的解决方案是在解析为纯文本之前读取正文参数映射

在我的日志中我可以看到这一点,所以我很确定请求有一个正文:

****** METHOD: POST
****** URI: https://localhost/echo
****** ENTITY <echo2=c&echo2=d&aa=e&aa=f&echo=a&echo=b&echo=a,{HEADERS...}>
Writing [echo2=c&echo2=d&aa=e&aa=f&echo=a&echo=b&echo=a] as "application/x-www-form-urlencoded" using [org.springframework.http.converter.StringHttpMessageConverter@a7c98f]

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)