Packages

trait PlayBodyParsers extends BodyParserUtils

Body parsers officially supported by Play (i.e. built-in to Play)

Source
BodyParsers.scala
Linear Supertypes
BodyParserUtils, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. PlayBodyParsers
  2. BodyParserUtils
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

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 DefaultMaxDiskLength: Long

    Default max length allowed for disk based body.

    Default max length allowed for disk based body.

    You can configure it in application.conf:

    play.http.parser.maxDiskBuffer = 512k
  5. def DefaultMaxTextLength: Long

    Default max length allowed for text based body.

    Default max length allowed for text based body.

    You can configure it in application.conf:

    play.http.parser.maxMemoryBuffer = 100k
  6. val UNLIMITED: Long

    Unlimited size.

  7. def anyContent(maxLength: Option[Long]): BodyParser[AnyContent]

    Guess the body content by checking the Content-Type header.

  8. def anyContent: BodyParser[AnyContent]

    Guess the body content by checking the Content-Type header.

  9. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  10. def byteString: BodyParser[ByteString]

    Buffer the body as a simple akka.util.ByteString.

    Buffer the body as a simple akka.util.ByteString.

    Will buffer up to the configured max memory buffer amount, after which point, it will return an EntityTooLarge HTTP response.

  11. def byteString(maxLength: Long): BodyParser[ByteString]

    Buffer the body as a simple akka.util.ByteString.

    Buffer the body as a simple akka.util.ByteString.

    maxLength

    Max length (in bytes) allowed or returns EntityTooLarge HTTP response.

  12. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  13. def createBadResult(msg: String, statusCode: Int = BAD_REQUEST): (RequestHeader) ⇒ Future[Result]
    Attributes
    protected
  14. def default(maxLength: Option[Long]): BodyParser[AnyContent]

    If the request has a body, parse the body content by checking the Content-Type header.

  15. def default: BodyParser[AnyContent]

    If the request has a body, parse the body content by checking the Content-Type header.

  16. def defaultBodyParser: BodyParser[AnyContent]
  17. def empty: BodyParser[Unit]

    Don't parse the body content.

    Don't parse the body content.

    Definition Classes
    BodyParserUtils
  18. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  19. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  20. def error[A](result: Future[Result]): BodyParser[A]

    A body parser that always returns an error.

    A body parser that always returns an error.

    Definition Classes
    BodyParserUtils
  21. def file(to: File): BodyParser[File]

    Store the body content into a file.

    Store the body content into a file.

    to

    The file used to store the content.

  22. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  23. def flatten[A](underlying: Future[BodyParser[A]])(implicit ec: ExecutionContext, mat: Materializer): BodyParser[A]

    A body parser that flattens a future BodyParser.

    A body parser that flattens a future BodyParser.

    Definition Classes
    BodyParserUtils
  24. def form[A](form: Form[A], maxLength: Option[Long] = None, onErrors: (Form[A]) ⇒ Result = ...): BodyParser[A]

    Parse the body and binds it to a given form model.

    Parse the body and binds it to a given form model.

    case class User(name: String)
    
    val userForm: Form[User] = Form(mapping("name" -> nonEmptyText)(User.apply)(User.unapply))
    
    Action(parse.form(userForm)) { request =>
      Ok(s"Hello, ${request.body.name}!")
    }
    form

    Form model

    maxLength

    Max length (in bytes) allowed or returns EntityTooLarge HTTP response. If None, the default play.http.parser.maxMemoryBuffer configuration value is used.

    onErrors

    The result to reply in case of errors during the form binding process

  25. def formBinding(maxChars: Long = DefaultMaxTextLength): FormBinding
  26. def formUrlEncoded: BodyParser[Map[String, Seq[String]]]

    Parse the body as form url encoded if the Content-Type is application/x-www-form-urlencoded.

  27. def formUrlEncoded(maxLength: Long): BodyParser[Map[String, Seq[String]]]

    Parse the body as form url encoded if the Content-Type is application/x-www-form-urlencoded.

    Parse the body as form url encoded if the Content-Type is application/x-www-form-urlencoded.

    maxLength

    Max length (in bytes) allowed or returns EntityTooLarge HTTP response.

  28. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  29. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  30. def ignore[A](body: A): BodyParser[A]
    Definition Classes
    BodyParserUtils
  31. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  32. def json[A](implicit reader: Reads[A]): BodyParser[A]

    Parse the body as Json if the Content-Type is text/json or application/json, validating the result with the Json reader.

    Parse the body as Json if the Content-Type is text/json or application/json, validating the result with the Json reader.

    A

    the type to read and validate from the body.

    reader

    a Json reader for type A.

  33. def json: BodyParser[JsValue]

    Parse the body as Json if the Content-Type is text/json or application/json.

  34. def json(maxLength: Long): BodyParser[JsValue]

    Parse the body as Json if the Content-Type is text/json or application/json.

    Parse the body as Json if the Content-Type is text/json or application/json.

    maxLength

    Max length (in bytes) allowed or returns EntityTooLarge HTTP response.

  35. def maxLength[A](maxLength: Long, parser: BodyParser[A])(implicit mat: Materializer): BodyParser[Either[MaxSizeExceeded, A]]

    Wrap an existing BodyParser with a maxLength constraints.

    Wrap an existing BodyParser with a maxLength constraints.

    maxLength

    The max length allowed

    parser

    The BodyParser to wrap

    Definition Classes
    BodyParserUtils
  36. def multipartFormData[A](filePartHandler: FilePartHandler[A], maxLength: Long = DefaultMaxDiskLength): BodyParser[MultipartFormData[A]]

    Parse the content as multipart/form-data

    Parse the content as multipart/form-data

    filePartHandler

    Handles file parts.

    maxLength

    Max length (in bytes) allowed or returns EntityTooLarge HTTP response.

    See also

    DefaultMaxDiskLength

    Results.EntityTooLarge

  37. def multipartFormData(maxLength: Long): BodyParser[MultipartFormData[TemporaryFile]]

    Parse the content as multipart/form-data

    Parse the content as multipart/form-data

    maxLength

    Max length (in bytes) allowed or returns EntityTooLarge HTTP response.

  38. def multipartFormData: BodyParser[MultipartFormData[TemporaryFile]]

    Parse the content as multipart/form-data

  39. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  40. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  41. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  42. def raw: BodyParser[RawBuffer]

    Store the body content in a RawBuffer.

  43. def raw(memoryThreshold: Long = DefaultMaxTextLength, maxLength: Long = DefaultMaxDiskLength): BodyParser[RawBuffer]

    Store the body content in a RawBuffer.

    Store the body content in a RawBuffer.

    memoryThreshold

    If the content size is bigger than this limit, the content is stored as file.

    See also

    DefaultMaxDiskLength

    Results.EntityTooLarge

  44. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  45. def temporaryFile: BodyParser[TemporaryFile]

    Store the body content into a temporary file.

  46. def text: BodyParser[String]

    Parse the body as text if the Content-Type is text/plain.

  47. def text(maxLength: Long): BodyParser[String]

    Parse the body as text if the Content-Type is text/plain.

    Parse the body as text if the Content-Type is text/plain.

    If the charset is not explicitly declared, then the default "charset" parameter value is US-ASCII, per https://tools.ietf.org/html/rfc6657#section-4. Use tolerantText if more flexible character decoding is desired.

    maxLength

    Max length (in bytes) allowed or returns EntityTooLarge HTTP response.

  48. def toString(): String
    Definition Classes
    AnyRef → Any
  49. def tolerantBodyParser[A](name: String, maxLength: Long, errorMessage: String)(parser: (RequestHeader, ByteString) ⇒ A): BodyParser[A]

    Create a body parser that uses the given parser and enforces the given max length.

    Create a body parser that uses the given parser and enforces the given max length.

    name

    The name of the body parser.

    maxLength

    The maximum length of the body to buffer.

    errorMessage

    The error message to prepend to the exception message if an error was encountered.

    parser

    The parser.

    Attributes
    protected
  50. def tolerantFormUrlEncoded: BodyParser[Map[String, Seq[String]]]

    Parse the body as form url encoded without checking the Content-Type.

  51. def tolerantFormUrlEncoded(maxLength: Long): BodyParser[Map[String, Seq[String]]]

    Parse the body as Form url encoded without checking the Content-Type.

    Parse the body as Form url encoded without checking the Content-Type.

    maxLength

    Max length (in bytes) allowed or returns EntityTooLarge HTTP response.

  52. def tolerantJson: BodyParser[JsValue]

    Parse the body as Json without checking the Content-Type.

  53. def tolerantJson(maxLength: Long): BodyParser[JsValue]

    Parse the body as Json without checking the Content-Type.

    Parse the body as Json without checking the Content-Type.

    maxLength

    Max length (in bytes) allowed or returns EntityTooLarge HTTP response.

  54. def tolerantText: BodyParser[String]

    Parse the body as text without checking the Content-Type.

  55. def tolerantText(maxLength: Long): BodyParser[String]

    Parses the body as text without checking the Content-Type.

    Parses the body as text without checking the Content-Type.

    Will attempt to parse content with an explicit charset, but will fallback to UTF-8, ISO-8859-1, and finally US-ASCII if incorrect characters are detected.

    maxLength

    Max length (in bytes) allowed or returns EntityTooLarge HTTP response.

  56. def tolerantXml: BodyParser[NodeSeq]

    Parse the body as Xml without checking the Content-Type.

  57. def tolerantXml(maxLength: Long): BodyParser[NodeSeq]

    Parse the body as Xml without checking the Content-Type.

    Parse the body as Xml without checking the Content-Type.

    maxLength

    Max length (in bytes) allowed or returns EntityTooLarge HTTP response.

  58. def using[A](f: (RequestHeader) ⇒ BodyParser[A]): BodyParser[A]

    Allows to choose the right BodyParser parser to use by examining the request headers.

    Allows to choose the right BodyParser parser to use by examining the request headers.

    Definition Classes
    BodyParserUtils
  59. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  60. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  61. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  62. def when[A](predicate: (RequestHeader) ⇒ Boolean, parser: BodyParser[A], badResult: (RequestHeader) ⇒ Future[Result]): BodyParser[A]

    Creates a conditional BodyParser.

    Creates a conditional BodyParser.

    Definition Classes
    BodyParserUtils
  63. def xml: BodyParser[NodeSeq]

    Parse the body as Xml if the Content-Type is application/xml, text/xml or application/XXX+xml.

  64. def xml(maxLength: Long): BodyParser[NodeSeq]

    Parse the body as Xml if the Content-Type is application/xml, text/xml or application/XXX+xml.

    Parse the body as Xml if the Content-Type is application/xml, text/xml or application/XXX+xml.

    maxLength

    Max length (in bytes) allowed or returns EntityTooLarge HTTP response.

Deprecated Value Members

  1. def urlFormEncoded: BodyParser[Map[String, Seq[String]]]
    Annotations
    @deprecated
    Deprecated

    (Since version 2.6.0) Use formUrlEncoded

  2. def urlFormEncoded(maxLength: Long): BodyParser[Map[String, Seq[String]]]
    Annotations
    @deprecated
    Deprecated

    (Since version 2.6.0) Use formUrlEncoded

Inherited from BodyParserUtils

Inherited from AnyRef

Inherited from Any

Ungrouped