Packages

final class Request[F[_]] extends Message[F] with Product with Serializable

Representation of an incoming HTTP message

A Request encapsulates the entirety of the incoming HTTP request including the status line, headers, and a possible request body.

Source
Message.scala
Linear Supertypes
Serializable, Serializable, Product, Equals, Message[F], Media[F], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Request
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. Message
  7. Media
  8. AnyRef
  9. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Request(method: Method = Method.GET, uri: Uri = Uri(path = "/"), httpVersion: HttpVersion = HttpVersion.`HTTP/1.1`, headers: Headers = Headers.empty, body: EntityBody[F] = EmptyBody, attributes: Vault = Vault.empty)

    method

    Method.GET, Method.POST, etc.

    uri

    representation of the request URI

    httpVersion

    the HTTP version

    headers

    collection of Headers

    body

    fs2.Stream[F, Byte] defining the body of the request

    attributes

    Immutable Map used for carrying additional information in a type safe fashion

Type Members

  1. type Self = SelfF[F]
    Definition Classes
    Message
  2. type SelfF[F0[_]] = Request[F0]
    Definition Classes
    RequestMessage

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def addCookie(name: String, content: String): Self

    Add a Cookie header with the provided values

  5. def addCookie(cookie: RequestCookie): Self

    Add a Cookie header for the provided org.http4s.headers.Cookie

  6. final def as[A](implicit F: MonadThrow[F], decoder: EntityDecoder[F, A]): F[A]

    Decode the Media to the specified type

    Decode the Media to the specified type

    If no valid Status has been described, allow Ok

    A

    type of the result

    decoder

    EntityDecoder used to decode the Media

    returns

    the effect which will generate the A

    Definition Classes
    Media
  7. def asCurl(redactHeadersWhen: (CaseInsensitiveString) ⇒ Boolean = Headers.SensitiveHeaders.contains): String

    cURL representation of the request.

    cURL representation of the request.

    Supported cURL-Parameters are: -X, -H

  8. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  9. final def attemptAs[T](implicit decoder: EntityDecoder[F, T]): DecodeResult[F, T]

    Decode the Media to the specified type

    Decode the Media to the specified type

    T

    type of the result

    decoder

    EntityDecoder used to decode the Media

    returns

    the effect which will generate the DecodeResult[T]

    Definition Classes
    Media
  10. val attributes: Vault
    Definition Classes
    RequestMessage
  11. def authType: Option[AuthScheme]
  12. val body: EntityBody[F]
    Definition Classes
    RequestMessageMedia
  13. final def bodyText(implicit RT: RaiseThrowable[F], defaultCharset: Charset = DefaultCharset): Stream[F, String]
    Definition Classes
    Media
  14. def canEqual(that: Any): Boolean
    Definition Classes
    Request → Equals
  15. def change(httpVersion: HttpVersion, body: EntityBody[F], headers: Headers, attributes: Vault): Self
    Attributes
    protected
    Definition Classes
    RequestMessage
  16. final def charset: Option[Charset]
    Definition Classes
    Media
  17. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  18. final def contentLength: Option[Long]
    Definition Classes
    Media
  19. final def contentType: Option[Content-Type]
    Definition Classes
    Media
  20. def cookies: List[RequestCookie]

    Parses all available org.http4s.headers.Cookie headers into a list of RequestCookie objects.

    Parses all available org.http4s.headers.Cookie headers into a list of RequestCookie objects. This implementation is compatible with cookie headers formatted per HTTP/1 and HTTP/2, or even both at the same time.

  21. def covary[F2[x] >: F[x]]: SelfF[F2]

    Lifts this Message's body to the specified effect type.

    Lifts this Message's body to the specified effect type.

    Definition Classes
    MessageMedia
  22. def decode[A](f: (A) ⇒ F[Response[F]])(implicit F: Monad[F], decoder: EntityDecoder[F, A]): F[Response[F]]

    Helper method for decoding Requests

    Helper method for decoding Requests

    Attempt to decode the Request and, if successful, execute the continuation to get a Response. If decoding fails, an UnprocessableEntity Response is generated.

  23. def decodeStrict[A](f: (A) ⇒ F[Response[F]])(implicit F: Monad[F], decoder: EntityDecoder[F, A]): F[Response[F]]

    Helper method for decoding Requests

    Helper method for decoding Requests

    Attempt to decode the Request and, if successful, execute the continuation to get a Response. If decoding fails, an UnprocessableEntity Response is generated. If the decoder does not support the MediaType of the Request, a UnsupportedMediaType Response is generated instead.

  24. def decodeWith[A](decoder: EntityDecoder[F, A], strict: Boolean)(f: (A) ⇒ F[Response[F]])(implicit F: Monad[F]): F[Response[F]]
  25. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  26. def equals(that: Any): Boolean
    Definition Classes
    Request → Equals → AnyRef → Any
  27. def filterHeaders(f: (Header) ⇒ Boolean): Self

    Keep headers that satisfy the predicate

    Keep headers that satisfy the predicate

    f

    predicate

    returns

    a new message object which has only headers that satisfy the predicate

    Definition Classes
    Message
  28. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  29. def from: Option[InetAddress]

    Returns the the X-Forwarded-For value if present, else the remote address.

  30. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  31. def hashCode(): Int
    Definition Classes
    Request → AnyRef → Any
  32. val headers: Headers
    Definition Classes
    RequestMessageMedia
  33. val httpVersion: HttpVersion
    Definition Classes
    RequestMessage
  34. def isChunked: Boolean
    Definition Classes
    Message
  35. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  36. def isSecure: Option[Boolean]

    Whether the Request was received over a secure medium

  37. def mapK[G[_]](f: ~>[F, G]): Request[G]
  38. val method: Method
  39. def multiParams: Map[String, Seq[String]]

    Representation of the query string as a map

    Representation of the query string as a map

    In case a parameter is available in query string but no value is there the sequence will be empty. If the value is empty the the sequence contains an empty string.

    Examples

    Query StringMap
    ?param=vMap("param" -> Seq("v"))
    ?param=Map("param" -> Seq(""))
    ?paramMap("param" -> Seq())
    ?=valueMap("" -> Seq("value"))
    ?p1=v1&p1=v2&p2=v3&p2=v3Map("p1" -> Seq("v1","v2"), "p2" -> Seq("v3","v4"))

    The query string is lazily parsed. If an error occurs during parsing an empty Map is returned.

  40. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  41. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  42. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  43. def params: Map[String, String]

    View of the head elements of the URI parameters in query string.

    View of the head elements of the URI parameters in query string.

    In case a parameter has no value the map returns an empty string.

    See also

    multiParams

  44. lazy val pathInfo: String
  45. def pathTranslated: Option[File]
  46. def productArity: Int
    Definition Classes
    Request → Product
  47. def productElement(n: Int): Any
    Definition Classes
    Request → Product
  48. def productIterator: Iterator[Any]
    Definition Classes
    Product
  49. def productPrefix: String
    Definition Classes
    Product
  50. def putHeaders(headers: Header*): Self

    Add the provided headers to the existing headers, replacing those of the same header name The passed headers are assumed to contain no duplicate Singleton headers.

    Add the provided headers to the existing headers, replacing those of the same header name The passed headers are assumed to contain no duplicate Singleton headers.

    Definition Classes
    Message
  51. def queryString: String
  52. def remote: Option[InetSocketAddress]
  53. def remoteAddr: Option[String]
  54. def remoteHost: Option[String]
  55. def remotePort: Option[Int]
  56. def remoteUser: Option[String]
  57. def removeHeader(key: HeaderKey): Self
    Definition Classes
    Message
  58. lazy val scriptName: String
  59. def server: Option[InetSocketAddress]
  60. def serverAddr: String
  61. def serverPort: Int
  62. def serverSoftware: ServerSoftware
  63. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  64. def toString(): String
    Definition Classes
    Request → AnyRef → Any
  65. def trailerHeaders(implicit F: Applicative[F]): F[Headers]

    The trailer headers, as specified in Section 3.6.1 of RFC 2616.

    The trailer headers, as specified in Section 3.6.1 of RFC 2616. The resulting F might not complete until the entire body has been consumed.

    Definition Classes
    Message
  66. def transformHeaders(f: (Headers) ⇒ Headers): Self
    Definition Classes
    Message
  67. val uri: Uri
  68. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  69. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  70. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  71. def withAttribute[A](key: Key[A], value: A): Self

    Generates a new message object with the specified key/value pair appended to the #attributes.

    Generates a new message object with the specified key/value pair appended to the #attributes.

    A

    type of the value to store

    key

    io.chrisdavenport.vault.Key with which to associate the value

    value

    value associated with the key

    returns

    a new message object with the key/value pair appended

    Definition Classes
    Message
  72. def withAttributes(attributes: Vault): Self
    Definition Classes
    Message
  73. def withBodyStream(body: EntityBody[F]): Self

    Sets the entity body without affecting headers such as Transfer-Encoding or Content-Length.

    Sets the entity body without affecting headers such as Transfer-Encoding or Content-Length. Most use cases are better served by withEntity, which uses an EntityEncoder to maintain the headers.

    Definition Classes
    Message
  74. def withContentType(contentType: Content-Type): Self
    Definition Classes
    Message
  75. def withContentTypeOption(contentTypeO: Option[Content-Type]): Self
    Definition Classes
    Message
  76. def withEmptyBody: Self

    Set an empty entity body on this message, and remove all payload headers that make no sense with an empty body.

    Set an empty entity body on this message, and remove all payload headers that make no sense with an empty body.

    Definition Classes
    Message
  77. def withEntity[T](b: T)(implicit w: EntityEncoder[F, T]): Self

    Replace the body of this message with a new body

    Replace the body of this message with a new body

    T

    type of the Body

    b

    body to attach to this method

    w

    EntityEncoder with which to convert the body to an EntityBody

    returns

    a new message with the new body

    Definition Classes
    Message
  78. def withHeaders(headers: Header*): Self
    Definition Classes
    Message
  79. def withHeaders(headers: Headers): Self
    Definition Classes
    Message
  80. def withHttpVersion(httpVersion: HttpVersion): Self
    Definition Classes
    Message
  81. def withMethod(method: Method): Self
  82. def withPathInfo(pi: String): Self
  83. def withTrailerHeaders(trailerHeaders: F[Headers]): Self
    Definition Classes
    Message
  84. def withUri(uri: Uri): Self
  85. def withoutAttribute(key: Key[_]): Self

    Returns a new message object without the specified key in the #attributes.

    Returns a new message object without the specified key in the #attributes.

    key

    io.chrisdavenport.vault.Key to remove

    returns

    a new message object without the key

    Definition Classes
    Message
  86. def withoutContentType: Self
    Definition Classes
    Message
  87. def withoutTrailerHeaders: Self
    Definition Classes
    Message

Deprecated Value Members

  1. final def bodyAsText(implicit defaultCharset: Charset = DefaultCharset): Stream[F, String]
    Definition Classes
    Media
    Annotations
    @deprecated
    Deprecated

    (Since version 0.21.5) Can go into an infinite loop for charsets other than UTF-8. Replaced by bodyText

  2. def replaceAllHeaders(headers: Header*): Self

    Replace the existing headers with those provided

    Replace the existing headers with those provided

    Definition Classes
    Message
    Annotations
    @deprecated
    Deprecated

    (Since version 0.20.0-M2) Use withHeaders instead

  3. def replaceAllHeaders(headers: Headers): Self

    Replace the existing headers with those provided

    Replace the existing headers with those provided

    Definition Classes
    Message
    Annotations
    @deprecated
    Deprecated

    (Since version 0.20.0-M2) Use withHeaders instead

  4. def withBody[T](b: T)(implicit F: Applicative[F], w: EntityEncoder[F, T]): F[Self]
    Definition Classes
    Message
    Annotations
    @deprecated
    Deprecated

    (Since version 0.19) Use withEntity

  5. def withType(t: MediaType)(implicit F: Functor[F]): Self
    Definition Classes
    Message
    Annotations
    @deprecated
    Deprecated

    (Since version 0.20.0-M2) Use withContentType(Content-Type(t)) instead

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from Message[F]

Inherited from Media[F]

Inherited from AnyRef

Inherited from Any

Ungrouped