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.http
zawiera 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 abstrakcyjnaHttpRequest
– klas abstrakcyjnaHttpResponse
– interfejsWebsocket
– interfejs
Interfejsy pakietu java.net.http
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 | 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 | Opis |
---|---|
HttpClient.Redirect | Definiuje politykę automatycznego przekierowania |
HttpClient.Version | Określa wersję protokołu 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)