我正在尝试创建一个POST
servlet,该请求应该使用JSON
请求调用。以下应该工作,但不。可能缺少什么?如何在Spring Servlet中将JSON POST参数作为@RequestParam接受?
@RestController
public class MyServlet {
@PostMapping("/")
public String test(@RequestParam String name, @RequestParam String[] params) {
return "name was: " + name;
}
}
JSON POST:
{
"name": "test",
"params": [
"first", "snd"
]
}
结果:名字总是空。为什么?
"Response could not be created: org.springframework.web.bind.MissingServletRequestParameterException: Required String parameter 'name' is not present"
使用@RequestBody参数,会给结果 –
创建'@ GetController'和发送它作为一个GET查询字符串的作品,但我需要POST + JSON。 – membersound
@PawanPandey如果我在两个参数上都使用'@ RequestBody',则会出现以下错误:'“无法创建响应:org.springframework.http.converter.HttpMessageNotReadableException:缺少必需的请求主体:public java.lang。字符串MyServlet.test(java.lang.String,java.lang.String [])“' – membersound