2016-03-07 2 views
3

Я стараюсь комбинировать Kotlin RxJava и retrofit2.Retrofit2 и kotlin

@GET("/xxxxxxxxxxxx/{id}.json") 
fun getHotel(@Part("id") id : String) : Observable<Response<Hotel>> 

Когда я пытаюсь вызвать этот метод (getHotels()):

var subscription = HotelsFactory.getHotelService((activity.applicationContext as App) 
      .client) 
     .getHotel(arguments.getInt("id").toString()) 
     .subscribeOn(Schedulers.computation()) 
     .observeOn(AndroidSchedulers.mainThread()) 
     .subscribe({response -> showHotels(response)}) 
     {throwable ->  throwable.printStackTrace()} 
    mSubscription.add(subscription) 

Я беру это одно:

параметры @Part могут быть использованы только с многочастного кодирования.

+0

вы должны использовать '@ Path' вместо' @ Part' – jturolla

ответ

5

Проблема заключается в том что вы пытаетесь использовать @Part аннотацию, где вы должны использовать @Path аннотацию, просто заменить его, и вы должны быть все в порядке.

@Part, как описано в описании ошибки, следует использовать при отправке многостраничных данных не для изменения URL-адреса.

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