Estoy usando apache HttpClient
a publicar varios archivos al servidor. Aquí está el código:¿Pueden coexistir multiparte y fragmentación HTTP?
public static HttpResponse stringResponsePost(String urlString, String content, byte[] image,
HttpContext localContext, HttpClient httpclient) throws Exception {
URL url = new URL(URLDecoder.decode(urlString, "utf-8"));
URI u = url.toURI();
HttpPost post = new HttpPost();
post.setURI(u);
MultipartEntity reqEntity = new MultipartEntity();
StringBody sb = new StringBody(content, HTTP_CONTENT_TYPE_JSON, Charset.forName("UTF-8"));
ByteArrayBody ib = new ByteArrayBody(image, HTTP_CONTENT_TYPE_JPEG, "image");
reqEntity.addPart("interview_data", sb);
reqEntity.addPart("interview_image", ib);
post.setEntity(reqEntity);
HttpResponse response = null;
response = httpclient.execute(post, localContext);
return response;
}
El problema es, MultipartEntity
clase sólo tiene isChunked()
método (que siempre devuelve falso), no hay un "setChunked (booleano)" opción si deseo activar la codificación de chucked para mi entidad multiparte.
Mi pregunta es:
Puede HTTP coexisten varias partes y la fragmentación de acuerdo con la especificación del protocolo? Si no, ¿por qué otras entidades como la clase
InputStreamEntity
tienensetChunked(boolean)
dondeMultipartEntity
no?¿Hay alguna forma de publicar varios archivos "a la vez" con la fragmentación habilitada, más preferiblemente con las bibliotecas apache?