Da Spray.io Inhaltstypen auf einer niedrigen Ebene definiert, wie kann ich einfach auf den Inhaltstyp der eingehenden Anfrage verweisen?Den Spray.io Content-Type aus Anfrage extrahieren?
Hier ist ein kurzes Beispiel, wo ein Bild PUT ist.
put {
entity(as[Array[Byte]]) { data =>
complete{
val guid = Image.getGuid(id)
val fileExtension = // match a file extension to content-type here
val key = "%s-%s.%s" format (id, guid, fileExtension)
val o = new Image(key, contentType, data)
Image.store(o)
val m = Map("path" -> "/client/%s/img/%s.%s" format (id, guid, fileExtension))
HttpResponse(OK, generate(m))
}
}
}
Angesichts der Code oben, was ist eine einfache Möglichkeit, den Inhaltstyp zu extrahieren? Ich kann das einfach verwenden, um ein Muster zu einem passenden fileExtension
zu matchen. Danke für Ihre Hilfe.
Danke! Sieht so aus, als wäre dies die "eingebaute" Möglichkeit, einen Header zu extrahieren. Ich gebe zu, @ Jrudolphs Lösung ist jedoch brauchbarer, da sie ähnlich wie andere Extraktionen in Spray funktioniert. – crockpotveggies