Struts 1从操作重定向到参数作为POST请求的操作

rpa*_*rai 2 java post struts

现在我尝试使用我的Struts 1.3 Web应用程序中的一些参数从动作类重定向到动作类,这是我的代码

ActionRedirect redirect = new ActionRedirect(mapping.findForward(forwardPage));
redirect.addParameter("method", forwardPage);   
redirect.addParameter("username", "user");
redirect.addParameter("password", "PWD");
redirect.addParameter("forwardPage", "success");        
return redirect;
Run Code Online (Sandbox Code Playgroud)

它工作正常,但所有参数都显示在地址栏中,如何将其重定向为POST请求参数(隐藏参数)

gma*_*gma 7

你不能,这不是一个Struts问题.这是HTTP的设计方式.重定向浏览器时,它会执行GET请求.你不能要求浏览器改为做POST.唯一的方法是添加一些Javascript来发送请求.

或者您也可以要求Struts进行内部重定向,但它将隐藏到客户端,并且URL不会更改.

  • 在您的操作中使用简单的`return actionMapping.findForward(...)`,默认情况下struts执行内部重定向,如果您想要显式(通过浏览器)重定向,则必须在前向映射中放置`redirect = true`. (3认同)