happyhttp 简单而强大的http client 库
项目地址:https://github.com/yuancihang/happyhttp
public static void sampleGet(){ String text = HttpBuilder.newGet("http://www.xxx.com/").execute().getBodyAsText(); System.err.println(text); } public static void samplePost(){ HttpResponse response = HttpBuilder .newPost("http://www.xxx.com/") .addFormField("a", "1") .addFormField("b", "2") .execute(); // print http response header for(String name : response.getHeaderMap().keySet()){ System.err.println(name + ":" + response.getHeaderMap().get(name)); } // print http response body System.err.println(response.getBodyAsText()); } public static void sampleJson(){ String json = "{\"a\":\"1\"}"; HttpResponse response = HttpBuilder .newPost("http://www.xxx.com/") .setJsonBody(json) .execute(); System.err.println(response.getBodyAsText()); } public static void sampleProxy(){ String text = HttpBuilder.newGet("http://www.xxx.com/") .setProxy("x.x.x.x", 3128, null, null) .execute() .getBodyAsText(); System.err.println(text); } public static void sampleDownload(){ HttpBuilder.newGet("http://www.xxx.com/").download(new File("a.html")); } public static void sampleMultiPart(){ HttpResponse response = HttpBuilder .newPost("http://localhost:8080/DemoServlet/upload") .addMultiPartFormField("a", "1") .addMultiPartFormField("f1", "abc".getBytes()) .setProxy("127.0.0.1", 8888, null, null) .execute(); System.err.println(response.getBodyAsText()); }
maven
<dependency> <groupId>com.github.yuancihang</groupId> <artifactId>happyhttp</artifactId> <version>1.2</version> </dependency>
gradle
compile 'com.github.yuancihang:happyhttp:1.2'