playframework/play-ws

WSRequest transparency and signing broken

mellster2012 opened this issue · 0 comments

Play WS Version: 2.7
API : Scala
Operating System: Any
JDK: Any

Expected Behavior

play-ws should not alter outgoing WSRequests or at the minimum provide a function where you can override/replace all existing http headers - currently content-type is not replaceable.

Actual Behavior

play-ws shades the latest version of asynchttpclient which alters the content-type header of a complete request before submitting it by enforcing the charset attribute. This breaks transparency and signatures for AWS etc. (e.g. BodyWritable[StringBuilder] defaults to text/plain without charset as content-type)

See: AsyncHttpClient/async-http-client#1578