package middleware
- Source
- package.scala
- Alphabetic
- By Inheritance
- middleware
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
type
RetryPolicy[F[_]] = (Request[F], Either[Throwable, Response[F]], Int) ⇒ Option[FiniteDuration]
A retry policy is a function of the request, the result (either a throwable or a response), and the number of unsuccessful attempts and returns either None (no retry) or Some duration, after which the request will be retried.
Value Members
-
object
DestinationAttribute
Client middleware that sets the destination attribute of every request to the specified value.
-
object
FollowRedirect
Client middleware to follow redirect responses.
Client middleware to follow redirect responses.
A 301 or 302 response is followed by: - a GET if the request was GET or POST - a HEAD if the request was a HEAD - the original request method and body if the body had no effects - the redirect is not followed otherwise
A 303 response is followed by: - a HEAD if the request was a HEAD - a GET for all other methods
A 307 or 308 response is followed by: - the original request method and body, if the body had no effects - the redirect is not followed otherwise
Whenever we follow with a GET or HEAD, an empty body is sent, and all payload headers defined in https://tools.ietf.org/html/rfc7231#section-3.3 are stripped.
If the response does not contain a valid Location header, the redirect is not followed.
Headers whose names match
sensitiveHeaderFilter
are not exposed when redirecting to a different authority. -
object
GZip
Client middleware for enabling gzip.
-
object
Logger
Simple Middleware for Logging All Requests and Responses
-
object
Metrics
Client middleware to record metrics for the http4s client.
Client middleware to record metrics for the http4s client.
This middleware will record: - Number of active requests - Time duration to receive the response headers - Time duration to process the whole response body - Time duration of errors, timeouts and other abnormal terminations
This middleware can be extended to support any metrics ecosystem by implementing the MetricsOps type
-
object
RequestLogger
Simple Middleware for Logging Requests As They Are Processed
-
object
ResponseLogger
Simple middleware for logging responses as they are processed
- object Retry
- object RetryPolicy