SpringBoot Post接口接收参数为null问题求助
问题原因及解决方案
你的问题出在前后端参数传递的格式不匹配:
- 后端
@PostMapping方法里的String number参数,SpringBoot默认会从请求的表单键值对参数中查找名为number的值。 - 但你前端用
$.post("/Test", "1")传递的是无键名的纯文本内容,后端无法将其映射到指定参数上,所以得到null。
解决办法(二选一即可)
方法1:前端改为传递键值对
修改JS代码,把参数包装成键值对形式,让后端能匹配到参数名:
$.post("/Test", { number: "1" })
方法2:后端用@RequestBody接收纯文本
如果需要保持前端的传参方式,后端可以给参数加上@RequestBody注解,直接接收请求体里的纯文本内容:
@PostMapping("/Test") public void Test(@RequestBody String number) { System.out.println("Number " + number); }
内容的提问来源于stack exchange,提问作者Jonas Engesgaar
相关产品推荐
相关产品推荐

