13

我有一个实例,我需要将多个相同的命名参数传递给服务器(数据数组)。

改变它是不可能的。

http://test.com?test[]=1&test[]=2&test[]=3

我如何使用 RetroFit 完成此任务?我看到您可以传递值映射,但这无济于事,因为键都是相同的。

任何帮助都会很棒......真的希望有一个干净的方法/解决方法,否则我将需要使用另一个 api lib 并进行项目重构。

4

2 回答 2

19

从 1.4.0 开始的改造增加了将数组或列表作为@Field@Query参数发送的能力。

New: @Query and @EncodedQuery now accept List or arrays for multiple values.
New: @Field now accepts List or arrays for multiple values.
于 2014-02-20T00:01:56.693 回答
5

我正在使用改造:1.9.0,一种做http://test.com?test[]=1&test[]=2&test[]=3的方法是这样的

void test(@Query("test[]") ArrayList<String> values);
于 2015-11-11T11:49:45.597 回答