是否可以让Play Framework 1在发布请求中处理已发送的JSON?连接到后端的开发人员不希望使用&符作为分隔符发送键/值对,他想发送JSON。问题是数据为空,即name
为空。这有可能实现吗?
到目前为止我所拥有的:
控制器
public static void myMethod(String name) {
Logger.info(name);
}
路由文件
POST /test Application.myMethod
我发送带有标题Content-Type: application/json
的请求和正文中的数据{
"name": "A name"
}
答案 0 :(得分:2)
我没有找到任何自动绑定,所以我做的是:
MyModel myModel = new GsonBuilder().create().fromJson(new InputStreamReader(request.body), MyModel.class);
它完美无缺!
答案 1 :(得分:0)
实际上,我不知道它如何与您配合使用,因为它会出现错误:“流关闭”。一个解决方法是:
String JSON = request.params.data.get("body")[0];
MyModel myModel = new Gson().fromJson(JSON, MyModel.class);