Spring Boot提供了多种方式来转发外部URL。
- 使用`RestTemplate`类发送HTTP请求并获取响应。可以使用`getForObject()`、`getForEntity()`、`postForObject()`等方法发送GET或POST请求,并将响应结果转发给客户端。
RestTemplate restTemplate = new RestTemplate();
String url = "http://example.com/external-url";
ResponseEntity response = restTemplate.getForEntity(url, String.class);
return response.getBody();
- 使用`RedirectView`类重定向到外部URL。可以使用`RedirectView`类创建一个重定向视图,并将外部URL作为构造函数的参数传入。
RedirectView redirectView = new RedirectView("http://example.com/external-url");
redirectView.setStatusCode(HttpStatus.MOVED_PERMANENTLY);
return new ModelAndView(redirectView);
- 使用`HttpServletResponse`对象直接发送重定向响应。可以在Controller方法中使用`HttpServletResponse`对象的`sendRedirect()`方法来实现重定向。
@RequestMapping("/external-url")
public void redirectExternalUrl(HttpServletResponse response) throws IOException {
response.sendRedirect("http://example.com/external-url");
}
以上是一些常用的方式来转发外部URL,具体选择哪种方式取决于你的需求和场景。
网友留言: