The new HTTP client [JEP-110]
In this section, we will review Java's Hypertext Transfer Protocol (HTTP) client, starting with a pre-Java 9 look and then diving into the new HTTP client that is part of the Java 9 platform. This approach is needed to support an understanding of the changes made in Java 9.
The HTTP client before Java 9
JDK version 1.1 introduced the HttpURLConnection
API that supported HTTP-specific features. This was a robust class that included the fields listed here:
chunkLength
fixedContentLength
fixedContentLengthLong
HTTP_ACCEPTED
HTTP_BAD_GATEWAY
HTTP_BAD_METHOD
HTTP_BAD_REQUEST
HTTP_CLIENT_TIMEOUT
HTTP_CONFLICT
HTTP_CREATED
HTTP_ENTITY_TOO_LARGE
HTTP_FORBIDDEN
HTTP_GONE
HTTP_INTERNAL_ERROR
HTTP_LENGTH_REQUIRED
HTTP_MOVED_PERM
HTTP_MOVED_TEMP
HTTP_MULT_CHOICE
HTTP_NO_CONTENT
HTTP_NOT_ACCEPTABLE
HTTP_NOT_AUTHORITATIVE
HTTP_NOT_FOUND
HTTP_NOT_IMPLEMENTED
HTTP_NOT_MODIFIED
HTTP_OK
HTTP_PARTIAL
HTTP_PAYMENT_REQUIRED
HTTP_PRECON_FAILED
HTTP_PROXY_AUTH
HTTP_REQ_TOO_LONG
HTTP_RESET
HTTP_SEE_OTHER
HTTP_SERVER_ERROR...