ホームページ >バックエンド開発 >PHPチュートリアル >ajax の長い接続に関する問題についてアドバイスをお願いします。
Ajaxの長い接続の問題についてアドバイスを求めています。 。
webQQ のようなチャットページを作成しています。当初は 2 秒ごとに ajax 経由で情報を取得するリクエストを送信していましたが、メッセージを送信した後、新しいメッセージがない場合に変更したいと考えています。 、サーバーは戻りません。サーバーから返された新しいメッセージが発生すると、クライアントは別のリクエストを送信します。
ただし、このメッセージが待機している間に、他の新しく作成された ajax リクエストが送信されることが判明しました。この復帰後も他のものは実行を続行するようですが、ajax がオブジェクトを作成した後は、相互に無関係になるはずです。私はjquery ajaxを使用します
PHPでは次のように書きます:
while(($res->num_rows)==0){
$res->close();
sleep(1 );
$res=$mysqli->query($sql);
}
この while がコメントアウトされている場合、クライアントは 2 秒ごとにリクエストを送信します 問題ありません
クライアント コード:
function get_msg(){
$.post("/lts/class/get_msg.php","lst_msg="+lst_msg,function Get_msg_callback(msg_back){
var i=0;
while(msg_back[i].msg!=""){
$('.msgs_box').append("