私が考えていたことについて、AJAXについて明確にしたい...
AJAXは非同期と言われています-必要に応じて-ページの読み込み中にjavascriptが実行され、AJAX呼び出しが実行された場合、サーバーがAJAXリクエストを処理している間、ページは引き続き読み込まれます...疑似並列処理に例えることができると仮定しても安全ですか?
では、結果として AJAX 呼び出しを行う 2 つの異なる JavaScript についてはどうでしょうか。つまり、ページの読み込み中に、2 つの js 関数が次々に発生し、それぞれが AJAX 呼び出しを行っています。それらは異なるjs関数/または2つの異なるjsファイルであるため、先に進む前に関数が戻るのを待つ必要がありますか? その通りだと思います...
そして最後に私が持っている本当の質問...私が呼び出したjs関数があり、その関数で2つのAJAX呼び出しを配置した場合、それらは半同時に処理されますか...私のWebページで偶然何かを試していたからです私は 2 つの AJAX 呼び出しを次々に配置しましたが、それが予期しない結果が得られた理由だと思います。残念ながら納期が急いでいたので追及はしませんでしたが、場合によってはとても便利なので、そういう世界なのかな…と思っていました。
このようなもの
function finalizeReservation(){
var request = $.ajax({
type: 'POST',
url: './scripts/php/reserve.php',
data: {
},
dataType: "json"
});
request.done(function(data,textStatus,jqXHR) {
});
request.fail(function(jqXHR, textStatus, errorThrown) {
});
var request2 = $.ajax({
type: 'POST',
url: './scripts/php/reserve.php',
data: {
},
dataType: "json"
});
request2.done(function(data,textStatus,jqXHR) {
});
request2.fail(function(jqXHR, textStatus, errorThrown) {
});
}
ただ好奇心旺盛。
予約を記録するWebページがあるので、それを考えていました。ゲストは詳細を見て、それについて考えることができますが、予約を確定する前に。その期間、データベースのスロットは保留に設定され、別のゲストが使用できなくなるため、競合したり、競合状態に陥ったりすることはありません (つまり、それについて考えている間、他のゲストがそれをファイナライズし、自分でそれをファイナライズしようとすると、彼はできません)。またはコードで不注意だった場合もそれをファイナライズします)。問題はゲストの動作にありますが、更新、バックページ、終了タブ、ウィンドウを閉じるなどのすべてのイベントをキャプチャしようとしたため、ゲストが何らかの理由で閉じない場合、スロットは保留状態のままになりませんすべてのブラウザーですべてがキャプチャされるわけではありません (キャンセル)。だから私はサーバーに時間制限を設けることについて考えました. . 問題は、ホスティングサーバーが chron ジョブをサポートしていないことですが、私はそれらについてあまり知りません。そのため、どれだけ役立つかわかりません。また、mysql はスケジューラーをサポートしていません。そこで、2 つの ajax 呼び出しを行うことと、1 つをタイマーにして、時間が経過した後にスロットの状態をチェックし、それに応じて動作することを考えました。それらについてあまり知らないので、それらがどれほど役立つかわかりません.mysqlはスケジューラをサポートしていません. そこで、2 つの ajax 呼び出しを行うことと、1 つをタイマーにして、時間が経過した後にスロットの状態をチェックし、それに応じて動作することを考えました。それらについてあまり知らないので、それらがどれほど役立つかわかりません.mysqlはスケジューラをサポートしていません. そこで、2 つの ajax 呼び出しを行うことと、1 つをタイマーにして、時間が経過した後にスロットの状態をチェックし、それに応じて動作することを考えました。
どんな考えでも大歓迎です。長い投稿で申し訳ありません。