我使用play 2.8.x framework
作为后端,我需要从客户端获取POST
请求。这些请求具有JSON主体,如下所示:
{
"userId": "jjjjssss"
}
而且我希望服务器端的Controller method
如下所示:
public Result getUser(String userId) {
...
return ok();
}
或类似这样的东西:
public Result getUser(String jsonBody) {
...
return ok();
}
我该怎么办? play 2.8.x framework
可以将请求主体传递给控制器方法吗?
好吧,如果我理解您的要求正确,您必须像这样在控制器方法中解析请求正文:
YourJsonClass theBody = request.body().parseJson(YourJsonClass.class)
这样,userId将必须在YourJsonClass中,并且URL路径将是多余的。
此处有更多信息:https://www.playframework.com/documentation/2.8.x/JavaJsonActions#Handling-a-JSON-request
只需确保您的请求是将Content-Type标头设置为]的POST请求,>
application / json; charset = utf-8