From 5831ed23235daccc773362bfb5bb5dda70f7dc1b Mon Sep 17 00:00:00 2001 From: Stewart Stewart Date: Fri, 31 Mar 2017 16:32:42 -0700 Subject: WIP: fixing sanitize directive to account for chunked/strict request entities --- src/main/scala/xyz/driver/core/rest.scala | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/main/scala/xyz/driver/core/rest.scala') diff --git a/src/main/scala/xyz/driver/core/rest.scala b/src/main/scala/xyz/driver/core/rest.scala index aa2a75e..b3a9116 100644 --- a/src/main/scala/xyz/driver/core/rest.scala +++ b/src/main/scala/xyz/driver/core/rest.scala @@ -88,8 +88,16 @@ package rest { } val sanitizeRequestEntity: Directive0 = { + val transformer = Flow.fromFunction(escapeScriptTags) + import HttpEntity._ mapRequest( - request => request.mapEntity(entity => entity.transformDataBytes(Flow.fromFunction(escapeScriptTags)))) + request => request.mapEntity(_ match { + case e: Chunked => e.transformDataBytes(transformer) + case e: Strict => e.transformDataBytes(e.contentLength + ???, transformer) + case e: Default => e.transformDataBytes(e.contentLength + ???, transformer) + } + ) + ) } } -- cgit v1.2.3