Java 在提交时获取请求参数数据

Java 在提交时获取请求参数数据,java,playframework,playframework-2.6,Java,Playframework,Playframework 2.6,我试图在我的控制器上点击提交时读取输入字段数据 我的login.scala.html <form action="@routes.HomeController.email_auth()" method="post"> Enter your email address :<input type="text" name="username"> <br> <input type="submit" value="Login">

我试图在我的控制器上点击提交时读取输入字段数据

我的
login.scala.html

<form action="@routes.HomeController.email_auth()" method="post">
        Enter your email address :<input type="text" name="username"> <br>
        <input type="submit" value="Login">
    </form>
在HomeController上阅读它

public Result email_auth() {
        DynamicForm form = formFactory.form().bindFromRequest();
//        if (form.data().size() == 0) {
//            return badRequest("Expceting some data");
//        } else {
            String response = form.get("username");
            System.out.println(response);
//        }
        return ok(email_auth.render());
    }

另外,尝试呈现不同的视图。如何使用java实现这一点我看到的第一件事是,您的路由被定义为GET请求,但您发送表单时会发出post请求。因此,Play将无法找到您的路线,也无法根据您的要求选择另一条适合您的路线。您的路线应如下所示:

POST     /email_auth       controllers.HomeController.email_auth
要呈现不同的视图,只需将其导入控制器并在返回方法中调用其呈现方法。如果要呈现名为
my_view.scala.html
的视图,需要返回
ok(my_view.render())


我还尝试了您的代码,参数被打印到控制台。因此,您想要的电子邮件已保存到变量
response

谢谢。我已经用POST和action字段更新了问题。我现在可以呈现新页面了,但如何读取提交时的输入参数?如果运行示例,它会打印任何内容吗?还是会抛出某种错误?
POST     /email_auth       controllers.HomeController.email_auth