A set of HTTP headers identified by case insensitive keys
Exception thrown when an error occurs during an HTTP request.
Exception thrown when an error occurs during an HTTP request.
This exception can occur because of network issues.
Builds an HTTP request.
Builds an HTTP request.
The request is sent using send. A request can be sent multiple times. Each time yields a Future[HttpResponse] which either succeeds with an HttpResponse or fails with an HttpNetworkError or HttpResponseError
An HTTP response obtained via an HttpRequest
Exception thrown when an error occurs during an HTTP request.
Exception thrown when an error occurs during an HTTP request.
This exception can occur because of bad HTTP status code (status >= 400).
This exception must be constructed via the companion object in order to factor out error messages.
Wraps HTTP method strings.
Defines the protocol used.
Defines the protocol used.
When setting a protocol from a string, we want to preserve the initial case such as not to alter the url.
Exposes available methods as object as well as an implicit conversion from string to Method objects.
Exposes available methods as object as well as an implicit conversion from string to Method objects.
Because all backends do not support all methods, this library imposes a subset of all available HTTP Methods. Should you find a use case for this library with other HTTP methods, please submit an issue with your motivation.
A set of HTTP headers identified by case insensitive keys
A Map[CaseInsensitiveString, String] would conform to the strict Map specification but it would make the API ugly, forcing the explicit usage of CaseInsensitiveString instead of string.
That's why we have the HeaderMap class to represent HTTP headers in a map like interface which is nice to use. It is however not *exactly* a map because different keys can map to the same value if they are case-insensitive equivalent.
Required for MapLike implementation. Should always be set to String.