我在春季使用下面的代码
返回新的ModelAndView(“ https://test.com?query1=value1&query2=Value2”)
这在浏览器中被编码为value = https://test.com?query1%3Dvalue1%26query2%3Value2

如何纠正此问题,需要进行哪些更改才能使它正确地形成网址。
这是tomcat还是浏览器在执行此操作?

问题是我试图按名称获取参数,但无法获取。由于名称已更改为某些特殊字符。

request.getParameter(“ query1”)

最佳答案

您可以尝试将这些属性添加到模型和视图中,就像

ModelAndView res = new ModelAndView("https://test.com");
res.addAttribute("query1", value1);
res.addAttribute("query2", value2);


要检索它们,可以使用

 Object param1 = (Object) request.getAttribute("query1");


作为对象是您的对象类型的属性

更新1:

如果最后一次尝试不起作用,请继续使用以下替代方法:

String message = "SomeText"
return new ModelAndView("redirect:" + "welcome", "message", message);


此消息变量将作为GET请求在URL中提供

http://localhost:80/test/welcome?message=SomeText


更新2:

我想您正在使用控制器,因此请尝试将以下属性添加到R​​equestMapping批注中

@RequestMapping(value = "...whatever you have", produces =
   "text/plain;charset=UTF-8")

09-08 05:58