Grails"params"不包含REST控制器的json有效负载

dra*_*han 4 rest grails json

我正在为我的应用编写REST API.

在POST请求中使用JSON有效内容:

{
   availableAfter: "2014-03-16"
   canRead: true
   rightName: "dsa"
}
Run Code Online (Sandbox Code Playgroud)

问题是,在控制器的参数中,没有来自有效载荷的值.但是,尽管如此,我可以使用properties[*]语法来阅读它们,如下所示:

right.properties['rightName', 'canRead'] = params;
right.availableAfter = params.date('availableAfter', 'yyyy-MM-dd');
Run Code Online (Sandbox Code Playgroud)

属性'rightName'和'canRead'设置为OK.'availableAfter'不是(即使服用也是null params.availableAfter).

它为什么不同?

更新:Grails v 2.3.6

inj*_*eer 5

你必须用来request.JSON获得你的JSON身体.params除非您在客户端中序列化JSON对象并将其作为参数传递,否则该对象不包含它.