首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何将JSON有效负载发布到Spring MVC中的@RequestParam

如何将JSON有效负载发布到Spring MVC中的@RequestParam
EN

Stack Overflow用户
提问于 2016-07-08 16:21:20
回答 4查看 60K关注 0票数 24

我正在使用JSON (最新版本,1.3.6),我想创建一个JSON端点,它接受一堆参数和一个JSON。类似于:

代码语言:javascript
复制
curl -X POST http://localhost:8080/endpoint \
-d arg1=hello \
-d arg2=world \
-d json='{"name":"john", "lastNane":"doe"}'

在Spring控制器中,我目前正在执行以下操作:

代码语言:javascript
复制
public SomeResponseObject endpoint(
@RequestParam(value="arg1", required=true) String arg1, 
@RequestParam(value="arg2", required=true) String arg2,
@RequestParam(value="json", required=true) Person person) {

  ...
}

json参数不会被序列化为Person对象。我得到了一个

代码语言:javascript
复制
400 error: the parameter json is not present.

显然,我可以将json参数设置为字符串并解析控制器方法中的有效负载,但这有点违背了使用Spring MVC的意义。

如果我使用@RequestBody就可以了,但是之后我就不可能在JSON主体之外发布单独的参数了。

在Spring MVC中有没有办法“混合”正常的POST参数和对象?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38262055

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档