<dependency>
<groupId>com.twitter</groupId>
<artifactId>finagle-core_2.13</artifactId>
<version>20.12.0</version>
</dependency>
import com.twitter.finagle.Http;
import com.twitter.finagle.Service;
import com.twitter.finagle.http.Methods;
import com.twitter.finagle.http.Request;
import com.twitter.finagle.http.Response;
import com.twitter.util.Await;
import com.twitter.util.Future;
import java.net.InetSocketAddress;
public class HttpUtils {
private static final Service<Request, Response> client =
Http.client()
.newService("api.example.com:80");
public static Response sendHttpRequest(String path) throws Exception {
Request request = Request.apply(Methods.GET, path);
Future<Response> responseFuture = client.apply(request);
return Await.result(responseFuture);
}
}
public class Main {
public static void main(String[] args) {
try {
Response response = HttpUtils.sendHttpRequest("/api/some-endpoint");
System.out.println(response.contentString());
} catch (Exception e) {
e.printStackTrace();
}
}
}
$ java Main