没有为 FormData 设置 Content-Type header

Spray not setting Content-Type header for FormData

FormData 应该自动设置 Content-Type header 但它不起作用。所以我尝试手动设置它,但收到警告。

val gzipPipeline: HttpRequest => Future[HttpResponse] = encode(Gzip) ~> sendReceive ~> decode(Gzip)

val request =
      (Post(uri,
        FormData(Map(
          "set_login" -> credentials.username,
          "set_pass" -> credentials.password))
      ) ~> addHeader(`Content-Type`(`application/x-www-form-urlencoded`))
        ~> addHeader(`Accept-Encoding`(gzip)))

[WARN] [04/14/2016 02:09:50.803] [forPipeline-akka..default-dispatcher-8] [akka://forPipeline/user/IO-HTTP/group-0/0] Explicitly set request header 'Content-Type: application/x-www-form-urlencoded' is ignored, the request Content-Type is set via the request's HttpEntity!

在任何一种情况下,我从服务器得到的响应都是我没有设置 Content-Type header 时得到的响应。

我是否正确构建了管道和HttpEntity?我应该为 FormData 使用编组器吗?

我正确设置了 HttpRequest 但服务器不接受 gzip 编码的请求。我只需要从管道中删除 gzip 编码。