1.将参数@Requestbody 类变为String,然后再idea对string进行分析
public String ruleByClass(@RequestBody String vo) {
JSONObject jsonObject = JSONArray.parseObject(vo);
Map parseMap = JSON.parseObject(String.valueOf(jsonObject), HashMap.class);
ExeRuleVo exeRuleVo = new ExeRuleVo();
exeRuleVo.setJsonValue((String) parseMap.get("jsonValue"));
exeRuleVo.setRuleClass((String) parseMap.get("ruleClass"));
return droolTestService.rule(exeRuleVo.getJsonValue(), Arrays.asList(exeRuleVo.getRuleClass().split(",")));
}
2.当参数@Requestbody传入的String中文乱码时,curl命令将-H中charset=utf-8
改为charset=GBK
-H "Content-Type: text/plain;charset=GBK"
curl -X POST "http://localhost:8090/***/****" -H "accept: */*" -H "Content-Type: text/plain;charset=GBK" -d "{\"jsonValue\":\"{:\\\"中文\\\"}\",\"ruleClass\":\"中文\"}"