2016-03-07 60 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时使用。