springboot 2.0.2如何开启Httpclient

How to enable Httpclient for springboot 2.0.2

我的项目使用的是 2.0.2 版本的 springboot。 我需要为我的项目使用 HttpClient class。 你能帮我看看如何为这个版本启用 httpClient 吗?

提前致谢,

一个可以帮助你的提示。

首先在 Spring 配置 class 中注册一个 HttpClient bean,如下所示:

import org.apache.http.client.HttpClient;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.impl.client.HttpClientBuilder;


@Configuration
public class SpringConfiguration {

  @Bean
  public HttpClient httpClient() {
    RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(30 * 1000).build();
    return HttpClientBuilder.create().setDefaultRequestConfig(requestConfig).build();
  }

}

那么您可以通过两种方式访问​​:

"Autowirering"组件中的字段

@Autowired
private HttpClient httpClient;

或者像这样在组件的构造函数中注入它:

@Service
public class MyClass{
  private final HttpClient httpClient;

  @Autowired
  public MyClass(HttpClient httpClient){
    this.httpClient = httpClient;
  }
}

我个人更喜欢第二种方法,它在测试时更容易理解和更容易,您只需为要测试的 class 实例提供一个模拟。