XMLHTTPリクエストを作成する便利な方法がありますJavascript?送信する前に3秒待っていますか?私は、アレイフルネームXMLHTTPリクエストの遅延
var items = [
{ url: "www.google.com/getChocolate", name: "Chocholate"},
{ url: "www.google.com/getCake", name: "Cake"},
{ url: "www.google.com/getCookie", name: "Cookie"},
];
for (var i = 0; i < items.length; i++) {
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
var data;
data = JSON.parse(xhr.responseText);
// processing data here
}
};
xhr.open("GET", items[i].url, false);
xhr.send();
// I somehow have to force to send the request for each item only every 3 seconds
}
を持っており、それらのそれぞれのために私は、サーバーからJSONレスポンスを受信したいが、私はあまりにも頻繁にリクエストを送信する場合、それはいつか私を禁止するので、私はすべての3のようにそれらを送信する必要があります応答を待ち、応答を処理して新しい応答を開始します。 私はそれを同期させなければならないと思うので、すでに虚偽の議論をxhr.open
に入れています。
'setTimeout'はあなたが探しているものです。 –
* "それを同期させる必要があります" * ...決してこれを行うことはありません!それはUI全体をブロックして、恐ろしい練習であるので非難されます – charlietfl
リクエストに 'setTimeout'をループで追加すると、指定された時間だけ待ち、すべてのアイテムのリクエストを一度に送信します。 1。 –