Moduł i pakiet java.net.http

Proszę zwrócić uwagę, że w module java.base znajduje się pakiet java.net z podpakietem java.net.spi.
Moduł java.net.httpzawiera jeden pakiet java.net.http.
Dostarcza wysokopoziomowych interfejsów dla klientów HTTP (wersja 1.1 i 2) i niskopoziomowe interfejsy klienckie dla gniazd webowych. Główne typy to:

  • HttpClient – klasa abstrakcyjna
  • HttpRequest – klas abstrakcyjna
  • HttpResponse – interfejs
  • Websocket – interfejs

Interfejsy pakietu java.net.http

Interfejsy pakietu java.net.htttp
Interfejsy Opis
HttpClient.Builder Budowniczy do budowania klientów HTTP
HttpRequest.BodyPublisher Przekształca wysokopoziomowe obiekty Jva w strumień buforów bajtowych odpowiednich do przesłania jako ciało żądania.
HttpRequest.Builder Budowniczy do budowania żądań HTTP
HttpResponse<T> Odpowiedź HTTP
HttpResponse.BodyHandler<T> Handler (uchwyt) dla ciał odpowiedzi
HttpResponse.BodySubscriber<T> BodySubscriber konsumuje bajty ciała odpowiedzi i konwertuje je w wysokopoziomowe typy Java
HttpResponse.PushPromiseHandler<T> Uchwyt dla obietnic dosłania (push promise)
HttpResponse.ResponseInfo Wstępna informacja o odpowiedzi dostarczana do BodyHandler, gdy odpowiedź zostaje wstępnie przyjęta, a przed przetworzeniem ciała odpowiedzi.
WebSocket Gnizado webowe po stronie klienckiej
WebSocket.Builder Budowniczy do budowania stron klienckich gniazd webowych
WebSocket.Listener Interfejs recepcyjny (nasłuchujący) gniazda webowego

Klasy pakietu java.net.http

Klasy pakietu java.net.http
Klasy Opis
HttpClient Klient HTTP
HttpHeaders Widok zestawu nagłówków HTTP (tylko do odczytu)
HttpRequest żądanie HTTP
HttpRequest.BodyPublishers Inplementacje klasy BodyPublisher (z Flow API), które implementują różne użyteczne obiekty Publisher, takie jak publikowanie ciała odpowiedzi z obiektu klasy String, czy z pliku.
HttpResponse.BodyHandlers Implementacje BodyHandler, które implementują rózne użyteczne uchwyty, takie jak wychwyt ciała odpowiedzi w postaci obiektu String, czy strumieniowanie ciała odpowiedzi do pliku.
HttpResponse.BodySubscribers Implementacje BodySubscriber (z Flow API), które implementuja rózne użyteczne obiekty Subscriber, takie jak konwersja bajtów ciała odpowiedzi do postaci obiektu String, czy strumieniowanie bajtów do pliku.

Wyliczenia pakietu java.net.http

Wyliczenia pakietu java.net.http
Wyliczenia Opis
HttpClient.Redirect Definiuje politykę automatycznego przekierowania
HttpClient.Version Określa wersję protokołu HTTP

Wyjątki pakietu java.net.http

Wyjątki pakietu java.net.http
Wyjątki Opis
HttpConnectTimeoutException Wyrzucany, gdy połacenie, przez które HTTPRequest ma być przesłany nie zostało (z powodzeniem) ustanowione w podanym okresie czasu
HttpTimeoutException Wyrzucany, gdy odpowiedź nie zotsała odebrana w podanym okresie czasu
WebSocketHandshakeException Wyrzucany w razie niepowodzenia powitalnego uścisku dłoni

Skrócona informacja o klasach i interfejsach

  • Klasa abstrakcyjna HttpClient
    • interfejs statyczny HttpClient.Builder
    • klasa statyczna (enum) HttpClient.Redirect
    • klasa statyczna (enum) HttpClient.Version
  • Klasa abstrakcyjna HttpRequest
    • statyczny interfejs HttpRequest.BodyPublisher
    • klasa statyczna HttpRequest.BodyPublishers (implementuje powyższy interfejs)
    • interfejs statyczny Http.Request.Builder
  • Klasa HttpHeaders
  • Interfejs HttpResponse<T>
    • statyczny interfejs HttpResponse.BodyHandler<T>
    • klasa statyczna HttpResponse.BodyHandlers (implementuje powyższy interfejs)
    • statyczny interfejs HttpResponse.BodySubscriber<T>(rozszerza
      Flow.Subscriber<List<ByteBuffer>>)
    • statyczny interfejs HttpResponse.PushPromiseHandler<T>
    • statyczny interfejs HttpResponse.ResponseInfo
  • interfejs WebSocket
    • statyczny interfejs WebSocket.Builder
    • statyczny interfejs WebSocket.Listener

Zajrzyj też Java 11: HTTP Client (Standard)

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *