Java模擬HTTP請求2
阿新 • • 發佈:2018-11-20
之前轉過一篇基於HttpClient的Java模擬HTTP請求,使用的第三方jar檔案,這次升級JDK11之後模擬HTTP請求不需要再匯入第三方jar檔案了,官方擴充套件了java.net包,所有的HTTP請求相關類均位於java.net.http包內,示例程式碼如下:
package xyz.lsm1998.test; import java.net.URI; import java.net.http.HttpClient; import java.net.http.HttpRequest; import java.net.http.HttpResponse; /** * 作者:劉時明 * 日期:2018/10/30 * 時間:15:36 * 說明: */ public class HttpTest { public static void main(String[] args) throws Exception { // 建立一個請求物件,指定uri和請求型別(預設為GET) var request = HttpRequest.newBuilder() .uri(URI.create("http://www.lsm1998.xyz")) .GET() .build(); // 建立HttpClient物件 var client = HttpClient.newHttpClient(); // 模擬一次同步請求 HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString()); System.out.println(response.body()); // 模擬一次非同步請求 HttpResponse<String> response2=client.sendAsync(request,HttpResponse.BodyHandlers.ofString()).get(); System.out.println(response2.body()); } }
ps:注意環境為JDK11