Я использую RoboSpice Google Http Java Client module
, и я успешно выполняю запрос POST
с использованием данных JSON
.Как загрузить файл с помощью RoboSpice Google Http Java Client с данными JSON
Проблема: Моя проблема теперь я прикрепить byte[]
данные в POST
запросе, но я не могу найти способ сделать это с RoboSpice Google Http Java Client module
.
Вот мой фрагмент кода:
public class SaveUserProfile_Request extends GoogleHttpClientSpiceRequest<SaveUserProfile> {
private String apiUrl;
private JSONObject mJsonObject;
private String filePath;
public SaveUserProfile_Request(JSONObject mJsonObject, String filePath) {
super(SaveUserProfile.class);
this.apiUrl = AppConstants.GLOBAL_API_BASE_ADDRESS + AppConstants.API_SAVE_PROFILE;
this.mJsonObject = mJsonObject;
this.filePath = filePath;
}
@Override
public SaveUserProfile loadDataFromNetwork() throws IOException {
Ln.d("Call web service " + apiUrl);
HttpRequest request = getHttpRequestFactory().buildPostRequest(new GenericUrl(apiUrl),
ByteArrayContent.fromString("application/json", mJsonObject.toString()));
request.setParser(new JacksonFactory().createJsonObjectParser());
return request.execute().parseAs(getResultType());
}
}
Я попытался с помощью Multipart HTTP Requests
, но он не работает.