title: Receiving Multipart Response on client side (ClosableHttpResponse)
body: <p>I have a java controller which have to send me some text data and different byte arrays. So I am building n multipart request and writing it to stream from HttpServletResponse.</p>
  
  <p>Now my problem is how to parse the response at client side and extract the multiple parts.</p>
  
  <p>SERVER CODE SNIPPET:-</p>
  
  <pre><code>        MultipartEntityBuilder builder = MultipartEntityBuilder.create();
          // Prepare payload
          builder.addBinaryBody("document1", file);
          builder.addBinaryBody("document2", file2);
          builder.addPart("stringData", new StringBody(jsonData, ContentType.TEXT_PLAIN));
  
          // Set to request body
  
          HttpEntity entity = builder.build();
          postRequest.setEntity(entity);
  </code></pre>
  
  <p>CLIENT CODE SNIPPET:-</p>
  
  <pre><code>        HttpPost httpPost = new HttpPost(finalUrl);
  
          StringEntity entity = new StringEntity(json);
          httpPost.setEntity(entity);
          httpPost.setHeader("Content-type", APPLICATION_JSON_TYPE);
  
          ByteArrayOutputStream baos = new ByteArrayOutputStream();
          CloseableHttpResponse response = httpClient.execute(httpPost);
          InputStream in = new BufferedInputStream(response.getEntity().getContent());
  </code></pre>
  
  <p>I checked CloseableHttpResponse and HttpEntity but none of them is providing method to parse multipart request.</p>
  
  <p>EDIT 1:
  This is my sample response I am receiving at client side stream:-</p>
  
  <pre><code>--bvRi5oZum37DUldtLgQGSbc5RRVZxKpjZMO4SYDe
  Content-Disposition: form-data; name="numeric"
  Content-Type: text/plain; charset=ISO-8859-1
  Content-Transfer-Encoding: 8bit
  01010110
  --bvRi5oZum37DUldtLgQGSbc5RRVZxKpjZMO4SYDe
  Content-Disposition: form-data; name="stringmessage"
  Content-Type: text/plain; charset=ISO-8859-1
  Content-Transfer-Encoding:8bit
  testmessage
  --bvRi5oZum37DUldtLgQGSbc5RRVZxKpjZMO4SYDe
  Content-Disposition: form-data; name="binarydata"; filename="file1"
  Content-Type: application/octet-stream
  Content-Transfer-Encoding: binary
  HI, THIS IS MY BINARY DATA
  --bvRi5oZum37DUldtLgQGSbc5RRVZxKpjZMO4SYDe
  Content-Disposition: form-data; name="ending"
  Content-Type: text/plain; charset=ISO-8859-1
  Content-Transfer-Encoding: 8bit
  ending
  --bvRi5oZum37DUldtLgQGSbc5RRVZxKpjZMO4SYDe--
  </code></pre>