Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何根据改装请求传递对象数组?_Android_Arrays_Retrofit - Fatal编程技术网

Android 如何根据改装请求传递对象数组?

Android 如何根据改装请求传递对象数组?,android,arrays,retrofit,Android,Arrays,Retrofit,我想使用改装请求传递对象数组。我们通过截击传递请求数组 {OrderId=11692, ItemsList[1][Amount]=1, ItemsList[1][id]=29, ItemsList[1][Notes]=2.0, ItemsList[0][TypeId]=23, ItemsList[0][Notes]=15.0, ItemsList[1][serviceId]=28, ItemsList[0][serviceId]=27, ItemsList[0][Amount]=3, Items

我想使用改装请求传递对象数组。我们通过截击传递请求数组

{OrderId=11692, ItemsList[1][Amount]=1, ItemsList[1][id]=29, ItemsList[1][Notes]=2.0, ItemsList[0][TypeId]=23, ItemsList[0][Notes]=15.0, ItemsList[1][serviceId]=28, ItemsList[0][serviceId]=27, ItemsList[0][Amount]=3, ItemsList[0][id]=29, ItemsList[1][TypeId]=23}
如何使用此格式发送请求

我试着这样做:

@FormUrlEncoded
@POST("api/shidhin/UpdateOrder")
Call<CommonResponse> updateOrderItems(@Header("Authorization") String token, @Field("OrderId") int orderid, @Field("ItemsList[]") ItemsList[] itemsList);

通过将对象数组作为
@FieldMap
传递,我解决了这个问题。她是解决这个问题的方法

创建对象数组

        Order.Orderitems orderitems;
        Map<String, String> parms = new HashMap<String, String>();
        for (int i = 0; i < orderItems.size(); i++) {
            orderitems = orderItems.get(i);
            parms.put("ItemsList[" + i + "][id]", String.valueOf(orderitems.getId()));
            parms.put("ItemsList[" + i + "][Amount]", String.valueOf(orderitems.getAmount()));
            parms.put("ItemsList[" + i + "][Notes]", "");
            parms.put("ItemsList[" + i + "][serviceId]", String.valueOf(orderitems.getServiceId()));
            parms.put("ItemsList[" + i + "][TypeId]", String.valueOf(orderitems.getServiceTypeId()));
        }
Order.Orderitems-Orderitems;
Map parms=newhashmap();
对于(int i=0;i
还使API调用如下:

@FormUrlEncoded
@POST("api/shidhin/UpdateOrder")
Call<CommonResponse> updateOrderItems(@Header("Authorization") String token, @Field("OrderId") int orderid, @FieldMap Map<String, String> parms);
@FormUrlEncoded
@POST(“api/shidhin/UpdateOrder”)
调用updateOrderItems(@Header(“Authorization”)字符串令牌,@Field(“OrderId”)int OrderId,@FieldMap parms);
您看到了吗?
@FormUrlEncoded
@POST("api/shidhin/UpdateOrder")
Call<CommonResponse> updateOrderItems(@Header("Authorization") String token, @Field("OrderId") int orderid, @FieldMap Map<String, String> parms);