Возникли проблемы при отправке списка <Integer>при загрузке файла на сервер. - PullRequest
1 голос
/ 02 мая 2019

ApiInterface.java

public interface ApiInterface {
@Multipart
@POST("/register")
  registerUser(
@Part("first_name") RequestBody firstname,
@Part("last_name") RequestBody lastname, 
@Part("email") RequestBody email,
@Part MultipartBody.Part photo,
@Part("types") List<Integer> types);  ->This part I am     having    problem
}

Presenter.java

public void registerUser(String firstname, String lastname,   String emails, String passwords, File profilePhoto,   List<Integer> eventTagPks ) {
    MultipartBody.Part partProfilePhoto =    MultipartBody.Part.createFormData("profile_photo", profilePhoto.getName(), RequestBody.create(MediaType.parse("image/*"), profilePhoto));
    RequestBody name = RequestBody.create(MediaType.parse("multipart/form-data"),firstname);
    RequestBody surname = RequestBody.create(MediaType.parse("multipart/form-data"),lastname);
    RequestBody email = RequestBody.create(MediaType.parse("multipart/form-data"),emails);
    RequestBody birthdate = RequestBody.create(MediaType.parse("multipart/form-data"),birthday);
    RequestBody password = RequestBody.create(MediaType.parse("multipart/form-data"),passwords);
    //RequestBody eventTagPkList = RequestBody.create(MediaType.parse("multipart/form-data"), eventTagPks); ->I cannot create RequestBody that contains Integer List


    apiInterface.registerUser(name,surname,email,password,birthdate,partProfilePhoto,eventTagPks).enqueue(new CustomCallBack<RegisterResponse>(activity,null,registerView,CustomCallBack.Type.None) {
        @Override
        public void onResponse(@NonNull Call<RegisterResponse> call, @NonNull Response<RegisterResponse> response) {
            super.onResponse(call, response);
            if (response.isSuccessful()) {

            }
        }

        @Override
        public void onFailure(@NonNull Call<RegisterResponse> call, @NonNull Throwable t) {
            super.onFailure(call, t);
        }
    });
}

Задача
Я не могу создать RequestBody, который содержит список целых чисел

RequestBody eventTagPkList = RequestBody.create(MediaType.parse("multipart/form-data"), eventTagPks);      

Проблема в том, что только RequestBody принимает только File, byte [], String, ByteString Как я могу отправить список с @part реальный вопрос заключается в следующем. Спасибо за вашу помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...