2016-04-05 9 views
0

RetroFitから次のクエリ文字列を生成する必要があります。私は十分に簡単にクエリ要素を繰り返すことができます。各要素は評価[ID] [ポイント]の形=パラメータを取るように、ちょうどそれをフォーマットする必要がRetroFit複雑なクエリパラメータ

//Assume Assessment contains the id and the parameter 
@PUT("url") 
Call putElements(@Query(???) Assessment... assessmentIds); 

出力例:改造でこれを達成するためにきれいな方法が https://baseurl.com/url?assessment[id1][points]=3&assessment[id2][points]=5

ありますか?

答えて

2

はい、あなたはあなたがこのようにそれを使用します@QueryMap

を探している:私はあなたがそれらを確認したい場合には、レトロフィット1及び2には、いくつかのチュートリアルを書きました

// sender 
Map<String,String> parameters = new HashMap<>(); 
parameters.add("assessmentid1points", "3"); 
parameters.add("assessmentid2points", "5"); 
parameters.add("key3", "value3"); 

yourObject.putElements(parameters); 

// receiver interface 
@PUT("url") 
Call putElements(@QueryMap Map<String,String> parameters); 

アウト、here