HttpClientBuilder httpClientBuilder = new HttpClientBuilder(environment); httpClientBuilder.setConnectionTimeout(Duration.seconds(5)); httpClientBuilder.setRequestTimeout(Duration.seconds(10)); JerseyClientBuilder jerseyClientBuilder = new JerseyClientBuilder(environment); jerseyClientBuilder.using(httpClientBuilder); Client httpClient = jerseyClientBuilder.build("HttpClientName"); Response response = httpClient.target("https://api.example.com/endpoint") .request() .get(); if (response.getStatus() == 200) { MyResponse myResponse = response.readEntity(MyResponse.class); } yaml httpClientName: connectionTimeout: 5000 requestTimeout: 10000 maxConnections: 10 public class MyAppConfiguration extends Configuration { @JsonProperty("httpClientName") private HttpClientConfiguration httpClientConfiguration; public HttpClientConfiguration getHttpClientConfiguration() { return httpClientConfiguration; } } @Override public void run(MyAppConfiguration configuration, Environment environment) { HttpClientBuilder httpClientBuilder = new HttpClientBuilder(environment); httpClientBuilder.setConnectionTimeout( Duration.milliseconds(configuration.getHttpClientConfiguration().getConnectionTimeout())); httpClientBuilder.setRequestTimeout( Duration.milliseconds(configuration.getHttpClientConfiguration().getRequestTimeout())); JerseyClientBuilder jerseyClientBuilder = new JerseyClientBuilder(environment); jerseyClientBuilder.using(httpClientBuilder); environment.jersey().register(jerseyClientBuilder.build("HttpClientName")); }


上一篇:
下一篇:
切换中文