Retrofit GET возвращает ноль, используя @path с целым числом - PullRequest
0 голосов
/ 09 марта 2019

Retrofit возвращает ноль при использовании с инициализированным целым числом, но возвращает данные при вызове напрямую с целым числом ... Я использую @path для доступа к данным WordPress-rest-api

Это Мой интерфейс

public interface ImageDataApi {

String BASE_URL = "https://dwarkawala.com/index.php/wp-json//wp//v2//";

@GET("media/{Id}")
Call<Thumbnail> getImageData(
        @Path("Id") int postId
);



class ImageFactory {
    private static ImageDataApi service;
    public static ImageDataApi getInstance() {

        if (service == null) {
            Retrofit retrofit = new Retrofit.Builder()
                    .addConverterFactory(GsonConverterFactory.create())
                    .baseUrl(BASE_URL)
                    .build();
            service = retrofit.create(ImageDataApi.class);
            return service;
        } else {
            return service;
        }
    }
}

И я звоню вот так, он все время возвращает ноль

int number = post.getId();
    ImageDataApi.ImageFactory.getInstance().getImageData(number).enqueue(new Callback<Thumbnail>() {
        @Override
        public void onResponse(Call<Thumbnail> call, retrofit2.Response<Thumbnail> response) {

            Log.d(TAG,String.valueOf(response.body()));


        }

        @Override
        public void onFailure(Call<Thumbnail> call, Throwable t) {

        }
    });

Но когда я звоню прямо так, это работает ...

ImageDataApi.ImageFactory.getInstance().getImageData(3658).enqueue(new Callback<Thumbnail>() {
        @Override
        public void onResponse(Call<Thumbnail> call, retrofit2.Response<Thumbnail> response) {

            Log.d(TAG,String.valueOf(response.body()));


        }

        @Override
        public void onFailure(Call<Thumbnail> call, Throwable t) {

        }
    });

Я не понимаю, где происходит ошибка, пожалуйста, помогите ...

...