我正在尝试打电话POST。
我的身体只有一个参数,所以我想简单地使用@RequestParam.
代码:
@RequestMapping(value = "/call", method = RequestMethod.POST)
@ResponseBody
public void doStuff(@RequestParam List<Integer> nums,
HttpServletResponse response) {
通话x-www-form-urlencoded效果很好-
卷曲 -X POST https://localhost:9002/call
-H '授权:承载 d1436121-25f7-4162-b0d4-7699d4acf147'
-H '内容类型:application/x-www-form-urlencoded'
-H '主机:localhost:9002'
-d nums=0%2C1% 2C3
但使用 JSON 进行同样的调用会失败。
代码:
@RequestMapping(value = "/call", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE)
@ResponseBody
public void doStuff(@RequestParam List<Integer> nums,
HttpServletResponse response) {
呼叫application/json失败-
curl -X POST https://localhost:9002/call
-H '授权:承载 d1436121-25f7-4162-b0d4-699d4acf147'
-H '内容类型:application/json'
-H '主机:localhost:9002'
- d '{ "nums":[0,1,3] }'
错误:
{ "errors": [ { "message": "抱歉,发生错误。", "type": "MissingServletRequestParameterError" } ] }
为什么它接受x-www-form-urlencoded却又拒绝JSON。
米琪卡哇伊
青春有我
杨__羊羊
相关分类