Fluent HTTP Client
For example:
import com.jcabi.http.Request; import com.jcabi.http.request.ApacheRequest; public class Main { public static void main(String[] args) { String html = new ApacheRequest("https://www.google.com") .uri().path("/users").queryParam("id", 333).back() .method(Request.GET) .header(HttpHeaders.ACCEPT, MediaType.TEXT_HTML) .fetch() .as(HttpResponse.class) .assertStatus(HttpURLConnection.HTTP_OK) .body(); } }
Check JavaDoc for more details.
The only dependency you need is (you can also download jcabi-http-1.3.2.jar and add it to the classpath):
<dependency> <groupId>com.jcabi</groupId> <artifactId>jcabi-http</artifactId> <version>1.3.2</version> </dependency>
Cutting Edge Version
If you want to use current version of the product, you can do it with this configuration in your pom.xml:
<repositories> <repository> <id>oss.sonatype.org</id> <url>https://oss.sonatype.org/content/repositories/snapshots/</url> </repository> </repositories> <dependencies> <dependency> <groupId>com.jcabi</groupId> <artifactId>jcabi-http</artifactId> <version>1.0-SNAPSHOT</version> </dependency> </dependencies>