将包含多部分/表单数据的curl请求(POST)转换为scala代码

将包含多部分/表单数据的curl请求(POST)转换为scala代码,scala,curl,post,xmlhttprequest,apache-httpclient-4.x,Scala,Curl,Post,Xmlhttprequest,Apache Httpclient 4.x,我有下面的curl请求,我正试图在scala中实现它 curl-u“username”-X POST“-H”内容类型:多部分/表单数据“-F”xmlRequest=@/home/@file.xml;Type=text/xml” 我尝试了以下方法,但收到了一个错误的请求 val client = new DefaultHttpClient() val requestEntity = MultipartEntityBuilder.create().addBinaryBody("xmlRequest"

我有下面的curl请求,我正试图在scala中实现它

curl-u“username”-X POST“-H”内容类型:多部分/表单数据“-F”xmlRequest=@/home/@file.xml;Type=text/xml”

我尝试了以下方法,但收到了一个错误的请求

val client = new DefaultHttpClient()
val requestEntity = MultipartEntityBuilder.create().addBinaryBody("xmlRequest",
  new File("/home/@file.xml")).build()
val post = new HttpPost("https://post_url.com")
post.addHeader(BasicScheme.authenticate(new
      UsernamePasswordCredentials(username, password), "UTF-8", false))
post.addHeader("Content-Type", "multipart/form-data")
post.setEntity(requestEntity)
val response = client.execute(post)
println(response.getStatusLine)

我已经能够通过使用另一个addBinaryBody函数来解决我的问题

  val client = new DefaultHttpClient()
  val requestEntity = MultipartEntityBuilder.create().addBinaryBody("xmlRequest",
  new File("/home/@file.xml"), ContentType.DEFAULT_BINARY, "").build()
  val post = new HttpPost("https://post_url.com")
  post.addHeader(BasicScheme.authenticate(new
  UsernamePasswordCredentials(username, password), "UTF-8", false))
  post.addHeader("Content-Type", "multipart/form-data")
  post.setEntity(requestEntity)
  val response = client.execute(post)
  println(response.getStatusLine)