<dependency>
<groupId>org.asynchttpclient</groupId>
<artifactId>async-http-client</artifactId>
<version>2.12.3</version>
</dependency>
AsyncHttpClient client = new DefaultAsyncHttpClient();
RequestBuilder requestBuilder = new RequestBuilder("GET");
Request request = requestBuilder.setUrl("https://api.example.com/users").build();
ListenableFuture<Response> responseFuture = client.executeRequest(request);
responseFuture.addListener(() -> {
try {
Response response = responseFuture.get();
if (response.getStatusCode() == 200) {
String responseBody = response.getResponseBody();
} else {
}
}
}, client);
client.close();
AsyncHttpClientConfig config = new DefaultAsyncHttpClientConfig.Builder()
.setConnectTimeout(Duration.ofSeconds(5))
.setRequestTimeout(Duration.ofSeconds(10))
.build();
AsyncHttpClient client = new DefaultAsyncHttpClient(config);