SpringCloud URL重定向及转发代码实例

  

Web UI项目中,很春天多控制器视图函数直接返回html页面,还有一些视图函数是要重定向或转发到其他的url上。

  

重定向和转发的区别:

  

重定向重定向:完整的重定向包含两次请求-响应过程,第一次是访问原始url,第二次是服务器通知客户端访问重定向后的url。重定向完成后,浏览器的地址是重定向后的url,而不是原始的url。
  重定向的使用场景:因为重定向会修改浏览器地址,所以形式提交应该使用重定向,以免用户刷新页面导致形式重复提交。

  

转发转发:完整的转发仅包含一次请求-响应过程,用户发出请求后,服务器端视图函数先处理自己的逻辑,然后在服务器端有调用另一个视图函数,最后将反应返回给浏览器。

  

示例:         @RequestMapping (“/?   公开课DemoController {/*   *提出示例:以字符串的形式构建目标url, url需要加上向前:前缀   * */@RequestMapping ("/forwardTest1”)   公共字符串forwardTest1 () {   返回“转发:/forwardTarget& # 63; param1=v1& param2=v2”;   }/*   *提出示例:使用ModelAndView()设置转发的目标url   * */@RequestMapping ("/forwardTest2”)   公共ModelAndView forwardTest2 () {   ModelAndView飞行器=new ModelAndView ("/forwardTarget ");//绝对路径//ModelAndView飞行器=new ModelAndView (“forwardTarget”);//相对路径也好的   飞行器。addObject (“param1”、“value1”);   飞行器。addObject (“param2”、“value2”);   返回飞行器;   }/*   *重定向目标有三种构建方式   * 1。使用重定向:前缀url方式构建目标url   * 2。使用RedirectView类型指定目标   * 3。使用ModelAndView类型指定目标,ModelAndView视图名默认是向前,所以对于重定向,需要加上重定向:前缀   * */@RequestMapping ("/noParamRedirect”)   公共RedirectView noParamTest () {   返回新RedirectView (“http://www.qq.com”);   }   公共字符串noParamTest2 () {   返回“重定向:http://www.qq.com”;   }   }      

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

SpringCloud URL重定向及转发代码实例