1

私は自分のウェブサイトのすべてのページに対して長いポーリングリクエストを開始しています。データベースを毎秒調べ、何か新しいものがある場合は、それを表示済みとしてマークし、通知を出力します。次に、呼び出し元のJavaScriptが新しいajaxリクエストを開始します。

新しい通知を受け取るのは1つだけなので、Webサイトで複数のタブを開くときに問題が発生しました。これは、同じユーザー名がログインしているクロスブラウザの問題でもあります...

この誰にでもできることを解決する最も賢い方法は何でしょうか?

あなたの入力に感謝します!

4

1 に答える 1

2

ブラウザが引っ張られないようにする方が良いと思います。ブラウザの問題が発生し、それをサポートするためのインフラストラクチャも巨大になるはずです。

Commetのような技術をプッシュするサーバー側を試してみてください

Cometは、長い間保持されていたHTTPリクエストにより、ブラウザが明示的にリクエストしなくても、ウェブサーバーがデータをブラウザにプッシュできるようにするウェブアプリケーションモデルです。

他のアプローチは、WebSocketを使用することです。

于 2012-08-23T20:02:53.780 に答える