我在发布请求中通过XHR发送JSON消息(内容类型:application / json; charset = UTF-8 - 我正在使用firefox / chrome)。
但是,我无法在播放1,.2.3控制器中处理/接收JSON消息 - 可能是由于导频错误。任何见解/工作的例子将不胜感激 - 谢谢
JSON消息(在JSONLint中成功验证):
{"email":"admin1@test.com","password":"admin123"}
我应该查看TypeBinder还是从请求参数创建对象?
答案 0 :(得分:1)
您可以使用嵌入在play中的gson来解析param。在你的控制器方法
MyParam myParam = new GsonBuilder().create().fromJson(request.params.get("myParam"), MyParam.class);
答案 1 :(得分:1)
您还可以尝试使用FLEXJSON(http://flexjson.sourceforge.net/)以避免遇到任何循环循环错误,尤其是在
时答案 2 :(得分:0)
我最后通过request.params.allSimple迭代,以便通过request.params.get获取值。我使用JsonParser()。解析此值来获取JSONElement。然后我在JSONElement上使用getAsJsonObject()来获取JSONBody。我通过JSONBody& amp;上的get调用检索了所需的JSONElements。然后调用getAs方法来获取实际值。我将更详细地研究TypeBinders - 任何其他建议都是最受欢迎的。