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