org.http4s.client.middleware

Members list

Concise view

Type members

Classlikes

trait CookieJar[F[_]]

Algebra for Interfacing with the Cookie Jar. Allows manual intervention and eviction.

Algebra for Interfacing with the Cookie Jar. Allows manual intervention and eviction.

Attributes

Companion:
object
Source:
CookieJar.scala
Graph
Supertypes
class Object
trait Matchable
class Any
object CookieJar

Cookie Jar Companion Object Contains constructors for client middleware or raw jar creation, as well as the middleware

Cookie Jar Companion Object Contains constructors for client middleware or raw jar creation, as well as the middleware

Attributes

Companion:
trait
Source:
CookieJar.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Client middleware that sets the destination attribute of every request to the specified value.

Client middleware that sets the destination attribute of every request to the specified value.

Attributes

Source:
DestinationAttribute.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

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://datatracker.ietf.org/doc/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.

Attributes

Source:
FollowRedirect.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
object GZip

Client middleware for enabling gzip.

Client middleware for enabling gzip.

Attributes

Source:
GZip.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
GZip.type
object Logger

Simple Middleware for Logging All Requests and Responses

Simple Middleware for Logging All Requests and Responses

Attributes

Source:
Logger.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Logger.type
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 org.http4s.metrics.MetricsOps type

Attributes

Source:
Metrics.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Metrics.type

Simple Middleware for Logging Requests As They Are Processed

Simple Middleware for Logging Requests As They Are Processed

Attributes

Source:
RequestLogger.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Client middlewares that logs the HTTP responses it receives as soon as they are received locally.

Client middlewares that logs the HTTP responses it receives as soon as they are received locally.

The "logging" is represented as an effectful action String => F[Unit]

Attributes

Source:
ResponseLogger.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
object Retry

Attributes

Source:
Retry.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Retry.type

Attributes

Source:
Retry.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
object UnixSocket

Middleware to direct all requests to the provided UnixSocketAddress

Middleware to direct all requests to the provided UnixSocketAddress

Attributes

Source:
UnixSocket.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Types

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.

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.

Attributes

Source:
package.scala