У меня есть объект json, содержащий сведения о форме оценки и массив json, в котором содержится информация о вопросах оценки (например, questionId, описание ответа, загруженное пользователем изображение для некоторых вопросов).Я хочу отправить эту оценочную информацию на сервер с библиотекой залпа.Для этого я готовлю объект json, как показано ниже:
{"evaluation":{"UserID":1,"EvaluationDate":"2018\/29\/12","EvaluationDetailsList":
[{"QuestionID":1,"Description":null,"Image":null,"PercentScore":0,"QuestionResponseID":3},
"QuestionID":2,"Description":null,"Image":null,"PercentScore":0,"QuestionResponseID":3},
"QuestionID":3,"Description":null,"Image":null,"PercentScore":0,"QuestionResponseID":3},
{"QuestionID":4,"Description":null,"Image":"B@927f5e6","PercentScore":0,"QuestionResponseID":3}]}}
EvaluationDetailsList - это мой массив Json с вопросом оценки.Когда я отправляю запрос post с нулевым полем Image, код работает правильно, но когда я помещаю байтовый массив в поле Image, я получаю сообщение об ошибке.Я гуглил о том, как отправить байтовый массив на веб-сервер с залпом.В ответах использовался MultiPartRequest из залпа.Но я не знаю, как использовать этот метод запроса, когда поле Image находится во вложенном объекте json.Вот мой запрос для отправки на сервер:
public void sendEvalResult(final JSONObject jsonObject, final ResultCallBack resultCallBack){
JSONObject finalObject=new JSONObject();
try {
finalObject.put("evaluation",jsonObject);
} catch (JSONException e) {
e.printStackTrace();
}
JsonObjectRequest req=new JsonObjectRequest(Request.Method.POST, Post_Evaluation_Result, finalObject,new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
resultCallBack.onGetResult(null);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
resultCallBack.onFailedGet();
}
}){
@Override
public String getBodyContentType() {
return "application/json;";
}
};
AppSingleton.getInstance(context).addToRequestQueue(req,"PostResult");}
помогите пожалуйста