在Retrofit URL中创建更多@path

时间:2017-06-12 10:09:41

标签: android retrofit

我需要有关如何在改装请求中使用多个参数'@path'的帮助。我尝试使用单个参数'@Path',这是有效的。

@GET("topics/{id}?userId=58bf87d343c3ccb5793b2e99")
Call<ResponseBody> artikel(@Path("id") String id);

但我想使用这样的两个参数

ApiService.class:

@GET("topics/{id}?userId={userId}")
Call<ResponseBody> artikelFeeds(@Path("id") String id, @Path("userId") String userId);

抛出错误'路径必须没有替换块' 这是改造客户的一部分

Call<ResponseBody> get_artikel;
    Retrofit retrofit;
    retrofit = new Retrofit.Builder()
            .baseUrl(Status.HOST_ARTICLE)
            .addConverterFactory(GsonConverterFactory.create())
            .client(httpClient)
            .build();

    ApiService apiService = retrofit.create(ApiService.class);
    get_artikel = apiService.artikelFeeds(id,userId);

2 个答案:

答案 0 :(得分:1)

试试这个,

@GET("topics/{id}")
Call<ResponseBody> artikelFeeds(@Path("id") String id, @Query("userId") String userId);

答案 1 :(得分:0)

您在?签名后进行查询,因此您需要使用@Query进行注释

@GET("topics/{id}Call<ResponseBody> artikelFeeds(@Path("id") String id, @Query("userId") String userId);