2013-10-24 3 views
2

Я использую библиотеку Square's Retrofit. Мне нужно реализовать запрос с переменным числом параметров. Я нашел предложение (link), и я стараюсь это:Реквизиты площади. Переменное количество параметров

меняю

@GET("someURL") 
void method(
     @Query("firstParameter") int firstValue, 
     @Query("secondParameter") String secondValue, 
     Callback<Response> cb 
); 

в

@POST("someURL") 
void method(
     @Body Map<String, Object> parameters, 
     Callback<Response> cb 
); 

и использовать последующие:

final HashMap<String, Object> param = new HashMap<String, Object>(); 
param.put("firstParameter", firstValue); 
param.put("secondParameter", secondValue); 

Первый способ прекрасно работает , но второй не работает. Что не так?

+0

Дубликат http://stackoverflow.com/questions/17580062/how-can-i-configure-squares-retrofit-client-to-handle- а-запрос-с-переменной – gnuf

ответ

4

Ну, вы переключаетесь с GET на POST, поэтому вместо передачи параметров запроса вы передаете значения в теле.

В настоящее время Retrofit не поддерживает переменные аргументы в запросах GET. Билет для добавления поддержки для этого отслеживается в этом выпуске GitHub: https://github.com/square/retrofit/issues/293

Смежные вопросы