请求参数被包装在JSON对象中。如果请求参数被包装在JSON对象中,则不能使用request.getParameter()
方法来获取参数。需要使用专门的JSON解析库(如Jackson、Gson等)来解析JSON请求体,将其转换为Java对象并访问其中的属性。
这是原代码
String controlCommand = request.getParameter("controlCommand");//获取为null
postman请求体:
{
"controlCommand": "MP3_PLAY",
}
修改后:
ObjectMapper objectMapper = new ObjectMapper();
JsonNode rootNode = objectMapper.readTree(request.getReader());
String controlCommand = rootNode.get("controlCommand").asText();
成功获取到数据