Package java.net.http
HTTP Client and WebSocket APIs
Provides high-level client interfaces to HTTP (versions 1.1 and 2) and low-level client interfaces to WebSocket. The main types defined are:
The protocol-specific requirements are defined in the Hypertext Transfer Protocol Version 2 (HTTP/2), the Hypertext Transfer Protocol (HTTP/1.1), and The WebSocket Protocol.
In general, asynchronous tasks execute in either the thread invoking
the operation, e.g. sending an HTTP request, or by the threads supplied by the client's executor
. Dependent tasks, those that are triggered by
returned CompletionStages or CompletableFutures, that do not explicitly
specify an executor, execute in the same default executor
as that of
CompletableFuture
, or the invoking thread if the operation completes before
the dependent task is registered.
CompletableFuture
s returned by this API will throw UnsupportedOperationException
for their obtrudeValue
and obtrudeException
methods. Invoking the cancel
method on a CompletableFuture
returned by this API may not
interrupt the underlying operation, but may be useful to complete,
exceptionally, dependent stages that have not already completed.
Unless otherwise stated, null
parameter values will cause methods
of all classes in this package to throw NullPointerException
.
- Since:
- 11
-
Interface Summary Interface Description HttpClient.Builder A builder of HTTP Clients.HttpRequest.BodyPublisher ABodyPublisher
converts high-level Java objects into a flow of byte buffers suitable for sending as a request body.HttpRequest.Builder A builder of HTTP requests.HttpResponse<T> An HTTP response.HttpResponse.BodyHandler<T> A handler for response bodies.HttpResponse.BodySubscriber<T> ABodySubscriber
consumes response body bytes and converts them into a higher-level Java type.HttpResponse.PushPromiseHandler<T> A handler for push promises.HttpResponse.ResponseInfo Initial response information supplied to aBodyHandler
when a response is initially received and before the body is processed.WebSocket A WebSocket Client.WebSocket.Builder A builder of WebSocket Clients.WebSocket.Listener The receiving interface ofWebSocket
. -
Class Summary Class Description HttpClient An HTTP Client.HttpHeaders A read-only view of a set of HTTP headers.HttpRequest An HTTP request.HttpRequest.BodyPublishers Implementations ofBodyPublisher
that implement various useful publishers, such as publishing the request body from a String, or from a file.HttpResponse.BodyHandlers Implementations ofBodyHandler
that implement various useful handlers, such as handling the response body as a String, or streaming the response body to a file.HttpResponse.BodySubscribers Implementations ofBodySubscriber
that implement various useful subscribers, such as converting the response body bytes into a String, or streaming the bytes to a file. -
Enum Summary Enum Description HttpClient.Redirect Defines the automatic redirection policy.HttpClient.Version The HTTP protocol version. -
Exception Summary Exception Description HttpConnectTimeoutException Thrown when a connection, over which anHttpRequest
is intended to be sent, is not successfully established within a specified time period.HttpTimeoutException Thrown when a response is not received within a specified time period.WebSocketHandshakeException Thrown when the opening handshake has failed.