Play! framework - GET variables



从GET请求中提取变量的最有效/最优雅的方法是什么?

有比读取queryString()更好的方法(它返回一个必须手动处理的Map)。改为使用play.data.DynamicForm

public static Result aboutAMan() {
    DynamicForm df = form().bindFromRequest();
    int age;
    String name;
    boolean isAdmin;
    name = (df.get("name") != null) ? df.get("name") : "The Unknown";
    age = (df.get("age") != null) ? Integer.parseInt(df.get("age")) : 0;
    isAdmin = Boolean.parseBoolean(df.get("is_admin"));
    String about = (name + " is " + age + " years old and " + ((isAdmin) ? "is" : "isn't") + " an admin");
    return ok(about);
}

当然,你也可以使用较短的版本,同时获得单一参数

public static Result aboutAMan() {
    return ok("ellou' " + form().bindFromRequest().get("name"));
}

链接是:

http://localhost:9000/about-a-man?name=SockSocket&age=23&is_admin=false

路线是:

GET    /about-a-man     controllers.Application.aboutAMan

已找到。只需使用request().queryString()

最新更新