Spring 3.0 MVC:重定向而不将参数添加到我的网址

Posted

技术标签:

【中文标题】Spring 3.0 MVC:重定向而不将参数添加到我的网址【英文标题】:Spring 3.0 MVC :Redirect without parameters being added to my url 【发布时间】:2013-07-16 12:12:15 【问题描述】:

我正在尝试重定向而不将参数添加到我的网址。我的意思是在重定向后,我的网址如下所示:.../success/?param1=xxx&param2=xxx。

这个问题和这个Spring MVC Controller: Redirect without parameters being added to my url一模一样

回复 https://***.com/a/16841663/384984 就是我正在寻找的 (ignoreDefaultModelOnRedirect)。问题是我使用的是 Spring 3.0。这个 Spring 版本如何解决?

【问题讨论】:

【参考方案1】:

    您可以在重定向之前在Controller 方法中简单地清除Model 映射。

    model.asMap().clear();
    return "redirect:" + yourURL;
    

    根本不公开模型属性。

    RedirectView view = new RedirectView(yourURL, true);
    view.setExposeModelAttributes(false);
    return new ModelAndView(view); 
    

    希望this link能帮助您找到更好的解决方案,特别是第(4)点HandlerInterceptor整个Web应用程序中的通用参考数据

【讨论】:

我相信你不应该在传递给 RedirectView 构造函数的内容中添加“redirect:”前缀;原因很明显。 :)

以上是关于Spring 3.0 MVC:重定向而不将参数添加到我的网址的主要内容,如果未能解决你的问题,请参考以下文章

Spring MVC - 重定向后保留请求参数

spring mvc 重定向,地址栏带了参数,不想带怎么办

在 cPanel 中创建自定义 PHP 错误页面,而不将它们从引发错误的页面重定向

Spring mvc框架 controller间跳转 ,重定向 ,传参

Spring MVC Controller 使用 URL 参数重定向而不是响应

Spring MVC controller间跳转 重定向 传参