Take it with a grain of salt because it's years since I used it, but the Jetty HTTP Client has a fluent API and can be used completely asynchronously. It doesn't use CompletableFuture, but it works with Java 8 lambdas and wouldn't be hard to adapt.
No comments yet.