Spring MVCアプリケーションが(ユーザーによって送信された)動的URLにリダイレクトするようにします。このようなコードがある場合、
@RequestMapping("/redirectToSite")
protected ModelAndView redirect(
@RequestParam("redir_url") String redirectUrl,
HttpServletRequest request,
HttpServletResponse response)
{
// redirect to redirectUrl here
return ?
}
送信されたURLにリダイレクトするには何を書く必要がありますか?例えば http://mySpringMvcApp/redirectToSite?redir_url=http://www.google.com
はGoogleにリダイレクトする必要があります。
これを試して:
@RequestMapping("/redirectToSite")
protected String redirect(@RequestParam("redir_url") String redirectUrl)
{
return "redirect:" + redirectUrl;
}
これは 16.5.3.2リダイレクト:Springのprefix で説明されています リファレンスドキュメント 。もちろん、いつでも手動でこれを行うことができます。
response.sendRedirect(redirectUrl);
@RequestMapping(value="/redirect",method=RequestMethod.GET)
void homeController(HttpServletResponse http){
try {
http.sendRedirect("Your url here!");
} catch (IOException ex) {
}
}