I have a REST endpoint implemented with Spring MVC @RestController. Sometime, depends on input parameters in my controller I need to send http redirect on client.
Is it possible with Spring MVC @RestController and if so, could you please show an example ?
Add an
HttpServletResponse
parameter to your Handler Method then callresponse.sendRedirect("some-url");
Something like:
To avoid any direct dependency on
HttpServletRequest
orHttpServletResponse
I suggest a "pure Spring" implementation returning a ResponseEntity like this:If your method always returns a redirect, use
ResponseEntity<Void>
, otherwise whatever is returned normally as generic type.if you @RestController returns an String you can use something like this
and this kind of redirect is only for GET request, if you want to use other type of request use HttpServletResponse