こんにちは、ユーザーがいつ投稿リクエストを送信したかを追跡するアプリケーションを作成しています。特定の数の投稿リクエストがあると、別のページにリダイレクトされます。私は ajax 関数を作成する必要があること、および投稿が到着したかどうかを確認し続けるためにループする必要があることを知っていますが、これがどのように行われるかを確認してください。
誰かがこれを手伝ってくれるか、少なくとも私を正しい方向に向けてくれてありがとう。
こんにちは、ユーザーがいつ投稿リクエストを送信したかを追跡するアプリケーションを作成しています。特定の数の投稿リクエストがあると、別のページにリダイレクトされます。私は ajax 関数を作成する必要があること、および投稿が到着したかどうかを確認し続けるためにループする必要があることを知っていますが、これがどのように行われるかを確認してください。
誰かがこれを手伝ってくれるか、少なくとも私を正しい方向に向けてくれてありがとう。
関数を使用して、window.setInterval
一定の間隔で関数を実行できます。
window.setInterval(function() {
// this will run every second
if (user reached POST limit) {
// redirect him somewhere
window.location.href = 'http://www.google.com';
}
}, 1000);
または、ここで示したように POST リクエストの数を追跡している場合:
var count = 0;
$.ajaxSetup({
beforeSend: function(jqXHR, settings) {
if (settings.type == 'POST') {
count++;
}
// Allow only 3 POST AJAX requests for this page
// and if there are more abort them
if (count > 3) {
window.location.href = 'http://www.google.com';
return false;
}
}
});
HTTP 投稿が Web サーバーに入るときにログを記録するだけの場合は、次の操作を実行できます。
1 Cookie をチェックして、これが繰り返し要求であるかどうかを確認します Cookie が条件を満たしている場合は、別のページにリダイレクトします。その時点で Cookie をクリアまたはリセットすることをお勧めします。そのエントリ ポイントでも同様にログを記録したいと思うかもしれません。 2 アクションをログに記録します。
これは Ajax リクエストである必要はありませんが、可能です。Web サーバーにとって、要求は要求です。