gpt4 book ai didi

java - 重定向后重做原始请求 getRequestDispatcher

转载 作者:行者123 更新时间:2023-12-01 10:26:16 25 4
gpt4 key购买 nike

嘿,我有一个代码可以拦截所有请求(GET 和 POST),并最终使用表单重定向到另一个页面。我希望当用户发布表单时,执行初始拦截的请求

我的实际代码:

public void doFilter(ServletRequest originalRequest, ServletResponse res, FilterChain chain){
originalRequest.getRequestDispatcher("/message").forward(request, res);
}

...

@RequestMapping("/message", method=GET)
public void showMessageForm(...){
...
}
@RequestMapping("/message", method=POST)
public void messageOk(ServletResponse res, ModelAndView mav){
//redirect to the originalRequest.
????
}

原始请求可以是 GET 或 POST。如果是帖子,我希望表单的内容也被传输。

谢谢!

最佳答案

您的 messageOk 方法将需要返回一个带有表单的页面,其中包含传递的每个字段的隐藏字段 + 一个“确定”按钮。所以类似:

<form method="POST or GET" action="origin url">
<input type="hidden" name="param1" value="value for param1"/>
... for each input ...
<input type="hidden" name="paramN" value="value for paramN"/>
<input type=submit" value="Continue"/>
</form>

只要您没有上传文件的 POST,此操作就应该有效。您可能需要考虑在应用程序中采用更简单的流程,例如仅在有人登录时强制显示此页面。

关于java - 重定向后重做原始请求 getRequestDispatcher,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35345342/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com