ループ内で複数のAPIを呼び出したい(例:$。each)。これはasync:false
モードで実行できますが、スクリプトが遅れます。同期モードでこれを実現するにはどうすればよいですか?オプションを無視async
するだけで、最後の要素のみがlist
API呼び出しに送信されます。
$.each(lists, function(index, value) {
channel = lists[index].channel;
list = lists[index].list;
$.ajax({
url : 'api.php?list=' + list + '&from=' + from + '&to=' + to,
dataType : 'json',
async : false,
success : function(data) {
obj = data;
$.ajax({
url : 'api.php?list=' + list + '&from=' + from + '&to=' + to + '&action=sender',
dataType : 'json',
async : false,
success : function(data) {
obj['senders'] = data.msg;
CommonContainer.inlineClient.publish(channel, obj);
}
});
}
});
});