首页 新闻 赞助 找找看

HttpServletRequest request请求体跑到另一个控制层了。

0
悬赏园豆:10 [已解决问题] 解决于 2022-08-11 14:10






问题补充:

feign的接口是这样的。在另一个controller 里得到的byte只有43b。并且不受这里的byte[] data影响。path可以正常接收。
以下图片是接收参数的controller。

景伟·郭的主页 景伟·郭 | 初学一级 | 园豆:174
提问于:2022-08-09 15:59

博客园很多这个问题的文章把

快乐的凡人721 1年前

@快乐的凡人721: quo实木有

一个郭大侠 1年前

@一个郭大侠: 搜索,,使用 feignclient上传文件、坑 啥的

快乐的凡人721 1年前
< >
分享
最佳答案
0

解决方法。一个请求只能有一个requestbody。而公司的全局feign配置中截取了请求体的数据而放到requestbody里面了,所以我获得的数据不正确。相关配置代码:Enumeration<String> bodyNames = request.getParameterNames();
StringBuffer body = new StringBuffer();
if (bodyNames != null) {
while (bodyNames.hasMoreElements()) {
String name = bodyNames.nextElement();
String values = request.getParameter(name);
body.append(name).append("=").append(values).append("&");
}
}
if (body.length() != 0) {
body.deleteCharAt(body.length() - 1);
template.body(body.toString());
}

景伟·郭 | 初学一级 |园豆:174 | 2022-08-11 14:09
其他回答(1)
0

参数名保持一致

收获园豆:10
mowen285 | 园豆:660 (小虾三级) | 2022-08-10 16:13

一致了还是不行
总监说让我放到map里传过去再拿出来,结果报JSON parse error: Unrecognized token 'contractId': was expecting ('true', 'false' or 'null'); nested exception is com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'contractId': was expecting ('true', 'false' or 'null')\n at [Source: (PushbackInputStream); line: 1, column: 12]

支持(0) 反对(0) 景伟·郭 | 园豆:174 (初学一级) | 2022-08-10 16:29
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册