Как загрузить данные JSON на сервер с помощью Multipart

У меня есть огромные данные json для загрузки на сервер, но когда я загружаю с помощью HttpPost, получаю исключение SocketTimeout, в то время как я изменил тайм-аут на 25000 и более.

У кого-нибудь есть решение для этого?

Поможет ли мне MultiPartEntity в этом случае?

Если да, то как отправить данные json на сервер с помощью MultiPartEntity?


person Neha Shukla    schedule 18.08.2015    source источник
comment
Используете ли вы какие-либо библиотеки, такие как модификация или залп, для HTTP-коммуникации?   -  person harshitpthk    schedule 18.08.2015
comment
@hars нет, я не пользуюсь   -  person Neha Shukla    schedule 19.08.2015


Ответы (1)


Да, MultiPartEntry от Apache MIME может помочь вам в этом случае. Иногда он используется для загрузки изображений с некоторыми контекстными данными в нескольких частях. Для отправки Json вы можете сделать что-то вроде этого

Вам нужно будет использовать MultipartEntityBuilder для создания объекта MultipartEntity.

//use builder as MultipartEntity is deprecated
MultipartEntityBuilder builder = MultipartEntityBuilder.create();        
builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);

String yourJsonString = yourJSONObject.toString();

builder.addPart("key_to_yourJsonString", yourJsonString ); //set your Json String
HttpEntity entity = builder.build();        //create entity
httppost.setEntity(entity);               
response = httpClient.execute(httppost);

вам потребуется, чтобы httpclient.jar, httpcore.jar, httpmime.jar, httpclient.jar, commons-codec.jar и commons-logging.jar находились в пути к классам.

Обратитесь к ссылкам ниже для получения дополнительной информации об этом. bethecoder MultipartEntityDeprecated

person harshitpthk    schedule 19.08.2015