你能用POST代替GET进行struts2动作重定向吗?

And*_*ndy 6 post redirect struts action struts2

<action name="actionA" class="com.company.Someaction">
 <result name="success" type="redirect-action">
  <param name="actionName">OtherActionparam>
  <param name="paramA">${someParams}</param>
  <param name="paramB">${someParams}</param>
  <param name="aBoatLoadOfOtherParams">${aBoatLoadOfOtherParams}</param>
 </result>
</action>
Run Code Online (Sandbox Code Playgroud)

在上面的动作映射中,我将从SomeAction重定向到OtherAction.我遇到了问题,因为不幸的是我需要在两个操作之间传递大量数据.IE7只允许GET请求像2k一样,当响应调用另一个动作的get请求时,当我刚刚超过该限制时它会爆炸.

我是否可以设置此重定向,最终将POST调用到其他操作?

leo*_*loy 6

正如文档所述:

在重定向之后传递数据的唯一方法是通过会话或使用web参数(url?name = value)[即,GET请求的查询字符串]

行动链可能是一个案例?我不确定,通常不推荐,但似乎你的情况很不寻常,所以看看可能会付出代价.

在这种情况下,我们并没有真正进行重定向,即我们不会回到客户端,而是将所有内容保留在服务器中.据说,然后,再次执行完整的拦截器堆栈 - 发布的数据应该影响新的操作,人们希望......