Android开发中,使用POST请求如何向服务器传递数组参数?

参数:ids:商品id(数组) userid:md5加密的
方式:get?/post?
返回格式:json
返回值:成功 retCode:0
失败 retCode:-1

阅读 10.8k
5 个回答

这个问题我之前遇到过,嘻嘻:
如果你是采用Map以Key-Value的方式去传递参数,
那么你就这样做:
key - value
key[0] 1
key[1] 2
key[2] 3
...
这样,每个key后门加个[i],i是数组的下标,这样在服务器中就能解析出数组来。
上面的例子,解析出来的数组如下:
int[] key = {

1,
2,
3,

}
...

field[] = 1
field[] = 2
field[] = 3
field[] = 5
...
试试

可以使用RxJava+Retrofit。
@POST("api/v1/{userId}/trades")
@FormUrlEncoded
Observable<Result<String>> register(

        @Path("userId")  String user_id,
        @Field("ids")  String[] ids);
        

public class Result<T> {

private int code;//返回码
private String msg;//返回信息
private T data;//返回数据

public Result<T> api(Api api){
    this.code=api.code();
    this.msg=api.msg();
    return this;
}

}
根据服务器回传的Result中的code状态码判断是否成功

把数组弄成字符串就是啊 提交参数时当做普通参数

使用json序列化一下,然后服务端解析json格式数组即可。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题