import org.eclipse.jetty.client.HttpClient;
import org.eclipse.jetty.client.api.ContentResponse;
import org.eclipse.jetty.client.api.Request;
import org.eclipse.jetty.client.util.BufferingResponseListener;
public class HttpClientExample {
public static void main(String[] args) {
HttpClient httpClient = new HttpClient();
try {
httpClient.start();
Request request = httpClient.newRequest("https://api.example.com/users");
request.method("GET");
BufferingResponseListener responseListener = new BufferingResponseListener() {
@Override
public void onComplete(Result result) {
if (result.isSucceeded()) {
System.out.println("Response content: " + getContentAsString());
} else {
System.out.println("Request failed: " + result.getFailure());
}
}
};
request.send(responseListener);
ContentResponse response = responseListener.get(10, TimeUnit.SECONDS);
System.out.println("Response status: " + response.getStatus());
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
httpClient.stop();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
<dependencies>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-client</artifactId>
<version>xxx</version>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-http</artifactId>
<version>xxx</version>
</dependency>
</dependencies>