重定向到`Java`中的get方法时如何从url中删除参数[重复]
Posted
技术标签:
【中文标题】重定向到`Java`中的get方法时如何从url中删除参数[重复]【英文标题】:how to remove parameter from url when redirecting to get method in `Java` [duplicate] 【发布时间】:2016-01-29 07:02:31 【问题描述】:当我从post方法重定向后加载get方法时,我想从postHandle
方法中的HeaderInterceptor.java
中删除参数。
我的HeaderInterceptor.java
文件中写的是
modelAndView.addObject("roleId", stu.getRoleId());
所以,当我从 post 方法重定向到 get 时,来的 url 是:
http://localhost:8080/System/StudentList.htm?roleId=23
所以,这里我要删除的是?roleId=23
。
以下是POST方法编写的代码:
String referer = request.getHeader("referer");
return "redirect:"+referer;
但我无法在引用字符串中看到任何参数。
我在 POST 方法中尝试的代码是:
RedirectView redirectview = new RedirectView("?");
redirectview.setExposeModelAttributes(false);
但它仍然显示与参数相同的网址。
任何帮助将不胜感激。谢谢:)
【问题讨论】:
【参考方案1】:您可以通过调用类似的方法手动删除 URL 参数
String newURL = url.substring(0, url.indexOf("?"));
【讨论】:
当我尝试在 get 方法中跟踪 URL 时,我没有得到像?roleId=23
String url = request.getServletPath();
这样的任何东西,那么如何使用子字符串操作手动删除它以上是关于重定向到`Java`中的get方法时如何从url中删除参数[重复]的主要内容,如果未能解决你的问题,请参考以下文章
.htaccess 从 GET 变量重定向到 url 字符串