leer el encabezado de cada parte en una solicitud multiparte en Scala Play
-
20-12-2019 - |
Pregunta
Estoy intentando extraer encabezados de cada parte en una solicitud de varias partes usando Scala Play.El controlador multiparte incorporado analiza los datos en Filepart.Filepart no tiene ninguna opción para leer encabezados individuales de cada parte.Solo tiene acceso al encabezado del tipo de contenido.
¿Existe alguna API lista para usar para esto?O hay una forma sencilla de manejarlo escribiendo un nuevo BodyParser personalizado.
Solución
Hay una forma sobrecargada de multiPartFormHandler
método que requiere un PartHandler
:
type PartHandler[A] = PartialFunction[Map[String, String], Iteratee[Array[Byte], A]]
El Map[String, String]
contiene los encabezados.Esto le ahorra tener que escribir un analizador de cuerpo completamente nuevo, sólo tiene que escribir esta función que toma los encabezados y produce un Iteratee
para consumir los datos correspondientes.