【问题标题】:POST @RequestParam Map<String, String> in Spring MVC returns empty mapSpring MVC 中的 POST @RequestParam Map<String, String> 返回空映射
【发布时间】:2018-01-17 17:48:38
【问题描述】:

我有以下方法:

@Controller
public class InterfaceController extends MasterController
{
    @PostMapping(value = "/interface") 
    @ResponseBody
    public String incomingPost(@RequestParam Map<String, String> queryMap)
    {
        System.out.println("Map: " + new Gson().toJson(queryMap));
        return "Raw string to return.";
    }
}

当我向/interface 发出 POST 请求时,我得到了一个成功的 200 响应,其中包含我想要返回的虚拟字符串,但地图没有填充我的参数:

Map: {}

为什么?

【问题讨论】:

  • 你如何调用这个端点你可以显示网址

标签: spring post parameters request-mapping


【解决方案1】:

如果您将所有参数作为 url 的一部分传递,@RequestParam 有效。

如果你在请求正文中传递数据,那么你必须使用

@RequestBody Map<String, Object> queryMap

【讨论】:

  • 是的,这就是问题所在。我在正文中发布,而不是 x-www-form-urlencoded。
猜你喜欢
  • 2018-05-05
  • 1970-01-01
  • 2010-10-25
  • 2014-06-25
  • 2011-10-20
  • 2011-10-22
  • 2020-07-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多