Computer >> Máy Tính >  >> Lập trình >> Java

Các lớp Http / 2 Client khác nhau trong Java 9 là gì?

Http / 2 là phiên bản mới hơn của Http giao thức. Những cải tiến của Http / 2 bao gồm việc tập trung vào cách dữ liệu được đóng khung và vận chuyển giữa máy chủ và máy khách. Trong phiên bản mới này của giao thức Http / 2 , các lớp riêng biệt đã được xác định cho Http khách hàng, yêu cầu, câu trả lời . API mới tạo ra Http kết nối dễ bảo trì hơn, nhanh hơn và cho phép ứng dụng đáp ứng nhanh hơn mà không cần đến thư viện của bên thứ ba.

API mới xử lý các kết nối HTTP thông qua ba lớp.

  • HttpClient: Nó xử lý việc tạo và gửi yêu cầu.
  • HttpRequest: Nó được sử dụng để xây dựng một yêu cầu được gửi qua HttpClient.
  • HttpResponse: Nó lưu giữ phản hồi từ yêu cầu đã được gửi.

Trong đoạn mã dưới đây, chúng tôi cần gửi yêu cầu đến một URL cụ thể và nhận được phản hồi.

// Create an HttpClient object   
   HttpClient httpClient = HttpClient.newHttpClient();
   System.out.println(httpClient.version());

// Build a HTTPRequest
   HttpRequest httpRequest = HttpRequest.newBuilder().uri(new  URI("https://www.tutorialspoint.com/")).GET().build(); // create a GET request for the given URI
   Map<String, List<String>> headers = httpRequest.headers().map();
   headers.forEach((k, v) -> System.out.println(k + "-" + v));

// Send the request
   HttpResponse httpResponse = httpClient.send(httpRequest, HttpResponse.BodyHandler.asString());

// Output the body of the response
   System.out.println("Response: " + httpResponse.body());