2015-09-10 4 views
1

Я всегда использую httpclient беглое api для публикации сообщений, потому что код очень чистый. пример:Почтовый файл с использованием API-интерфейса httpclient.

String html = Request.Post("URL") 
      .connectTimeout(2000).socketTimeout(2000) 
      .bodyForm(Form.form().add("type", "image").build(), Charset.forName("UTF8")) 
      .execute().returnContent().asString(); 

После прочтения документа HTTPClient, я нашел это:

MultipartEntityBuilder builder = MultipartEntityBuilder.create(); 
builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE); 
builder.setCharset(Charset.forName(CHARSET)); 
builder.addBinaryBody("media", bytes, ContentType.MULTIPART_FORM_DATA, fileName); 

Вопрос заключается в том, как я могу использовать свободно API для реализации этой функции.

Я нахожу .bodyFile(new File(""), ContentType.MULTIPART_FORM_DATA), но я не знаю, как установить форму param name файла.

ответ

3
HttpEntity entity = MultipartEntityBuilder.create() 
     .setMode(HttpMultipartMode.BROWSER_COMPATIBLE) 
     .setCharset(Charset.forName(CHARSET)) 
     .addBinaryBody("media", bytes, ContentType.MULTIPART_FORM_DATA, fileName) 
     .build(); 
String html = Request.Post("URL") 
     .connectTimeout(2000) 
     .socketTimeout(2000) 
     .body(entity) 
     .execute().returnContent().asString(); 
Смежные вопросы