Android Retrofit post Map <string,object =“”>包括Array不起作用

时间:2017-10-04 08:29:33

标签: java android post retrofit2

我尝试通过Retrofit发布Map如下。

ArrayMap<String, Object> map = new ArrayMap<String, Object>();

String key1 = "value1"

int[] intArray = {18, 29, 36, 12};


String[] strArray =  {"strValue1", "strValue2", "strValue3", "strValue4"};


map.put("key1","value1");
map.put("key2",intArray);
map.put("key3",strArray);


↓


@FormUrlEncoded
@POST("url")
void postSomething(
        @FieldMap ArrayMap<String, Object> params
);



Retrofit retrofit = new Retrofit.Builder()
            .baseUrl(URL)
            .client(httpClient)
            .addConverterFactory(GsonConverterFactory.create(gson))
            .build();

但是,阵列参数在Web服务器上无法正常工作。

在日志上:  intArray = notvalue&amp; strArray = notvalue

什么是适当的数组注释或什么错误?

谢谢!

1 个答案:

答案 0 :(得分:0)

您需要使用@FieldMap.

@FieldMap ArrayMap<String(field_name), Object> fields
祝你好运

埃姆雷