我想在一个活动中制作7个JSON请求。有什么办法吗? 如果有任何方法可以使用凌空来实现它?
答案 0 :(得分:1)
您可以通过设置标记来运行并行JSONObjectRequest
。例如,假设您要使用循环发送请求。您将执行以下操作:
for (int i = 0; i < requestSize; i++)
{
StringRequest request = new StringRequest(Request.Method.POST,
AppUrls.URL_SAVE_SAVE_DATA, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
String status = "";
JSONObject json = null;
try {
json = new JSONObject(response);
if(json != null && json.has(JSONParsor.STATUS))
status = json.getString(JSONParsor.STATUS);
if(status != null && status.length() > 0 && status.equalsIgnoreCase("success"))
{
}
else {
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
})
{
@Override
protected Map<String, String> getParams() {
Map<String, String> params = new HashMap<String, String>();
params.put(JSONParsor.DATA_STRING, jsonObject.toString());
return params;
}
};
request.setTag("TAG_" + i);
addToRequestQueue(request);
}
作为回应,您可以返回请求ID,然后您可以匹配,哪个请求属于哪个标记。
希望这有帮助。