Модификация: разрешен только один метод HTTP.Найдено: ПОЛУЧИТЬ и ПОЛУЧИТЬ - PullRequest
0 голосов
/ 06 мая 2019

Я использую Retrofit для получения данных из RestApi в мое приложение в Android.У меня проблема с методом Get с параметром.Когда я запускаю свой код, я получаю RetrofitError: [...]: разрешен только один метод HTTP.Найдено: GET и GET.

myWebService:

@GET("/tag/{id}")
    void getById(@Path("id") int id, Callback<Data> pResponse);

MainActivity:

String url = "xyz";
        retrofit = new RestAdapter.Builder()
                .setEndpoint(url)
                .setLogLevel(RestAdapter.LogLevel.FULL)
                .build();
        myWebService = retrofit.create(MyWebService.class);
myWebService.getById(id, new Callback<Data>() {

                @Override
                public void success(Data data, Response response) {
                    Log.d(CLASS_TAG, data.toString());

                }

                @Override
                public void failure(RetrofitError error) {

                }
            });

Например: когда я изменил @GET("/tag/{id}") на @GET("/tag/1")все работает хорошо.

1 Ответ

0 голосов
/ 06 мая 2019

Проверьте свой бэкэнд для фильтра авторизации:
вы могли авторизовать маршрут /tag/, но вам также следует авторизовать /tag/* для сопоставления пути с синтаксисом параметров.

Пожалуйста, расскажите нам о своем бэкэнде, чтобы мы могли предоставить вам больше информации при необходимости.

...