我有以下用例,我想在其中使用反向路由。
Project
com.xyz.controllers
--> Hello.java
-- Result sayHello();
--> HelloWrapper.java
-- wrapSayHello()
以下是路由文件:
POST /hello @com.xyz.controllers.Hello.sayHello()
sayHello 期望在对它的请求中有一个 JSON 正文,并使用 request().body().asJson() 读取它
如何使用反向路由并在请求中发送一些负载。 我看到在 wrapSayHello() 方法中使用反向路由, 我可以这样调用方法
routes.Hello.sayHello()
但我不知道如何按照原始方法在请求正文中发送一些 json
任何想法都会有所帮助..
最佳答案
晚会有点晚了,不过,这对其他人可能有用。
jsRoutes.controllers.Hello.sayHello().ajax({
data: JSON.stringify( jsonObject ),
contentType: "application/json; charset=utf-8",
success : function(data) {
},
error : function(error) {
console.log("error: " + error);
}
});
Controller 方法:
@BodyParser.Of(BodyParser.Json.class)
public Result sayHello() {
JsonNode json = request().body().asJson();
logger.debug(" JSON Stuff received : " + Json.prettyPrint(json));
return ok();
}
https://stackoverflow.com/questions/31464584/