在异步响应截击后发送休息请求
Send rest request after async responses volley
我搜索了这个话题,但没有找到可以消除我疑惑的东西。我的问题是我必须使用 rest api.
使用服务器中的数据填写一些表单字段
基本上我抛出 3 个不同的独立请求,因为它们是独立的,所以我用异步函数抛出它们。即:
JsonArrayRequest req = new JsonArrayRequest(URL, new Response.Listener<JSONArray> () {
@Override
public void onResponse(JSONArray response) {
try{
//My code to compound a list from JSON response
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.i("INFO:", "error consultando api");
error.printStackTrace();
}
});
我不知道如何实现以下。我需要发送另一个请求,该请求取决于前 3 个请求收集的信息。有没有一种优雅的方法来检测前 3 个请求已经完成,然后启动我的最后一个请求?
我试图在每个请求回调中放置一个布尔标志,并使用 for 循环阻止我的应用程序,直到所有标志都为真,但我认为这是一个错误的代码。
非常感谢
为 counting the responses
的请求输入 listener
(它是 onResponse 或 onErrorResponse)。如果计数是 reached to 3
那么 send 4th request
.
我搜索了这个话题,但没有找到可以消除我疑惑的东西。我的问题是我必须使用 rest api.
使用服务器中的数据填写一些表单字段基本上我抛出 3 个不同的独立请求,因为它们是独立的,所以我用异步函数抛出它们。即:
JsonArrayRequest req = new JsonArrayRequest(URL, new Response.Listener<JSONArray> () {
@Override
public void onResponse(JSONArray response) {
try{
//My code to compound a list from JSON response
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.i("INFO:", "error consultando api");
error.printStackTrace();
}
});
我不知道如何实现以下。我需要发送另一个请求,该请求取决于前 3 个请求收集的信息。有没有一种优雅的方法来检测前 3 个请求已经完成,然后启动我的最后一个请求?
我试图在每个请求回调中放置一个布尔标志,并使用 for 循环阻止我的应用程序,直到所有标志都为真,但我认为这是一个错误的代码。
非常感谢
为 counting the responses
的请求输入 listener
(它是 onResponse 或 onErrorResponse)。如果计数是 reached to 3
那么 send 4th request
.