3
这是一个带有用户名和电子邮件字段的简单表单。Play Framework 2.0 - asJson()总是返回null
<form method="post" action="@routes.Application.signup()" enctype="application/json">
<input type="text" id="username" name="username">
<input type="text" id="email" name="email">
<button type="submit">Sign up</button>
</form>
现在我尝试解析request().body()
作为documentation。
@BodyParser.Of(BodyParser.Json.class)
public static Result signup() {
RequestBody body = request().body();
return ok("Got json: " + body.asJson());
}
这将返回null。 request().body().toString()
并不尽管在事实上,我可以打印请求,这将显示为:
DefaultRequestBody(Some(Map(username -> List(james), email -> List([email protected]))),None,None,None,None,None,false)
基本上我想从请求,但该方法的toJSON总是返回null提取的姓名和电子邮件。
可能与该enctype有关? http://stackoverflow.com/a/4150273/1536382 –
嗯,我已经尝试完全删除enctype属性,它仍然为空,但文档说它应该设置为应用程序/ JSON。 – user3224429
是否正在导入'play.mvc.Http.RequestBody'?这可能是你导入错误类型的RequestBody ..? – brdu