Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.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
Java 从ArrayList到DavidWebAndroid_Java_Android_Post_Arraylist_Httpurlconnection - Fatal编程技术网

Java 从ArrayList到DavidWebAndroid

Java 从ArrayList到DavidWebAndroid,java,android,post,arraylist,httpurlconnection,Java,Android,Post,Arraylist,Httpurlconnection,我使用的是Http POST请求。我有要发送的所有参数的ArrayList或HashMap。如何使用DavidWebb传递参数数组 现在我是这样做的 Response<String> resp = webb .post(Constants.URL + Constants.CUSTOMER_SIGNUP) .param("username", params.get("username"))

我使用的是Http POST请求。我有要发送的所有参数的ArrayList或HashMap。如何使用DavidWebb传递参数数组

现在我是这样做的

Response<String> resp = webb
                    .post(Constants.URL + Constants.CUSTOMER_SIGNUP)
                    .param("username", params.get("username"))
                    .param("user_contact_no", params.get("user_contact_no"))
resp=webb响应
.post(Constants.URL+Constants.CUSTOMER\u注册)
.param(“用户名”,params.get(“用户名”))
.param(“用户联系电话号码”,params.get(“用户联系电话号码”))
我想做一些像

Response<String> resp = webb
                        .post(Constants.URL + Constants.CUSTOMER_SIGNUP)
                        .arraylist/hasmap of params
resp=webb响应
.post(Constants.URL+Constants.CUSTOMER\u注册)
.arraylist/hasmap参数

不熟悉特定的库,如果它是
HashMap
,您只需迭代
参数的条目集即可:

Response<String> resp = webb
                .post(Constants.URL + Constants.CUSTOMER_SIGNUP);
for (Map.Entry<String, String> entry : params.entrySet()) {
  resp = resp.param(entry.getKey(), entry.getValue());
}
resp=webb响应
.post(Constants.URL+Constants.CUSTOMER\u注册);
对于(Map.Entry:params.entrySet()){
resp=resp.param(entry.getKey(),entry.getValue());
}
我找到了解决方案。“安迪·特纳”的回答恰到好处

Request request = webb
                    .post(Constants.URL + Constants.CUSTOMER_SIGNUP);
                    for (Map.Entry<String, String> entry : params.entrySet()) {
                        request.param(entry.getKey(), entry.getValue());
                    }
            Response<String> resp = request.readTimeout(30000)
                    .connectTimeout(30000)
                    .asString();
Request=webb
.post(Constants.URL+Constants.CUSTOMER\u注册);
对于(Map.Entry:params.entrySet()){
request.param(entry.getKey(),entry.getValue());
}
Response resp=request.readTimeout(30000)
.connectTimeout(30000)
.asString();
自1.2.0版(2015-11-12发布)以来,您可以这样做:

Map<String, Object> params = new HashMap<String, Object>();
params.put("string", "a string can contain &");
params.put("number", 4711);
params.put("null", null);
params.put("empty", "");

Response<String> response = webb
        .post("/my-url")
        .params(params)
        .asString();
Map params=newhashmap();
put(“字符串”,“字符串可以包含&”);
参数put(“编号”,4711);
参数put(“null”,null);
参数put(“空”和“);
响应=韦伯
.post(“/myurl”)
.params(params)
.asString();

如何从
ArrayList
获取键/值对?我想用一种方法发送整个应用程序的请求。不管我派谁去。我正在传递所有参数的哈希映射。所以我只想按原样发送hashmap。您的答案需要修改,但谢谢您的回答。它帮助我找到了解决方案。我添加了一个问题来解决此要求: