如何为客户端和服务器配置spring boot resttemplate代理

时间:2017-12-04 15:23:06

标签: java spring spring-boot

我有一个架构,我的服务器组件将部署在单独的主机上,客户端组件(UI)将在不同的部署。

我坚持使用RestTemplate代理,有人可以帮助我如何实现它。

下面是一个例子,我试图遵循,但不确定它是否是正确的方法。

@Value("${generic.proxyHost}")
private String proxyHost;

@Value("${generic.proxyPort}")
private Integer proxyPort;

@Bean
public RestTemplate restTemplate() {

    LOGGER.info("Setting up proxy with HOSTNAME => " + proxyHost + " and PORT => " + proxyPort);

    SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory();

    Proxy proxy= new Proxy(Type.HTTP, new InetSocketAddress(proxyHost, proxyPort));
    requestFactory.setProxy(proxy);

    return new RestTemplate(requestFactory);
}

如果我知道如何处理多部分文件请求,也会有所帮助。

任何帮助都会得到很大的帮助。

1 个答案:

答案 0 :(得分:0)

  

我需要在单独的主机上使用REST API,我只是在寻找一个例子。我只是用Google搜索,但没有运气

Baeldung's blog处有关于Rest Template的精彩教程。

您可以使用这个简单的示例来了解如何使用它:

RestTemplate restTemplate = new RestTemplate();
String fooResourceUrl = "http://localhost:8080/spring-rest/foos";
ResponseEntity<String> response = restTemplate.getForEntity(fooResourceUrl + "/1", String.class);
assertThat(response.getStatusCode(), equalTo(HttpStatus.OK));

我上面链接的文章中有很多例子可以帮助你学习。

  

如果我知道如何处理多部分文件请求,也会有所帮助。

我相信this other question拥有开始实施此用例所需的信息。

干杯!