問題タブ [server-sent-events]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - サーバーがイベントを送信してPHPにPOSTしますか?
AjaxのようにSSEを使用してPOSTデータをPHPに送信することは可能ですか?
私はかなり長い間AJAXを使用してきましたが、長いポーリング技術では悪い結果が出ました。私もWebSocketについて考えていましたが、少し冗長なようです。
php - PHPGZipおよびサーバー送信イベントストリーム
サーバー送信イベントストリームをPHPで作成していますが、次のエラーが発生します。
「バッファzlib出力圧縮のフラッシュに失敗しました」
これは、gzip圧縮された出力をフラッシュしようとしたためだと思います。
これが私のPHPコードです:
私の質問は、これを機能させるための最良の方法は何ですか?理想的にはapacheでgzipを無効にすることなく-PHPでオフにすることができますか?
私はこれを試しましたが、うまくいきませんでした:
javascript - Eric Hynds による JQuery Multiselect UI の選択ボックスが動的に更新されると、最初のオプションが自動的に選択されます
http://www.erichynds.com/jquery/jquery-ui-multiselect-widget/の JQuery UI multiselect プラグインを使用して、選択ボックスに要素を動的に追加します
今、私は奇妙な問題に直面しています。選択ボックスが更新されるたびに、選択ボックスの最初のオプションが自動的に選択されます。この問題を解決する方法はありますか?
ありがとうございました
javascript - サーバー送信イベントの検査
ブラウザがサーバー送信イベントを受信したときに検査する最良の方法は何ですか。私はあなたが単に行う実装を見てきましconsole.log(e)
たが、それはあなたのデータが正しいことを前提としています。
console.log を使用せずに「ソースの表示」タイプのインスペクションで行うように、サーバー送信イベントを確認する方法はありますか?
mongodb - データベースから UI へのリアルタイムでのデータのプッシュ
データが書き込まれるデータベース (MySQL) があります。新しいレコードと変更されたレコードを UI にプッシュする必要があります。ここでいくつかの制約があります。このデータベースに書き込むコードを制御することはできず、キューに書き込むようにコードを変更することはできません。
これまでのところ、変更と新しい追加 (最終更新タイムスタンプを使用) のために DB を定期的に読み取り、そのデータを mongo db にプッシュしています (すべてのリクエストでメインの MySQL サーバーにアクセスしたくないため)。次に、cramp (ruby フレームワーク) とサーバー送信イベントを使用して、これらの変更をフロントエンドにプッシュします。ユーザーごとのキューを維持するために、redis が混在しています。
これは、リアルタイムのプッシュを行うための複雑な方法であることを認識しています。この混乱に対するもっときちんとした解決策があるかどうか疑問に思っていました。
ruby-on-rails - Crampアプリの認証にDeviseを使用できますか?
Cramp.in(http://cramp.in)フレームワークを使用してアプリを作成しました。アプリケーションの認証を設定する必要があります。Railsでは、この目的でDeviceを使用しました。デバイスをクランプアプリケーションで使用できますか、それとも他のものを使用する必要がありますか?
ありがとうございました
javascript - サーバーサイドイベントの戻り値にJSON配列を追加します
現在、私はJSON形式でデータを書き込んでいます。一度に1つのメッセージを次のように記述します。
しかし、今は、そのようなメッセージが5つある場合にのみout.flushを実行したいと思います。だから、どうすればこれを行うことができますか?Jsonメッセージを作成しますか?個別のデータ:{}本文。そして、そうする場合、javascriptを使用してクライアント側でc1、c2のペアにアクセスするにはどうすればよいですか?そして、選択肢は何ですか。
PS:私が5つの値を言うとき、私はc1とc2の値の5つのペアを意味します。
そして、私がこのようなことをした場合、クライアント側でjavascriptを使用して値にアクセスするにはどうすればよいですか?
要求に応じてJSコードを動作させる(ボディロードでregisterSSE()を呼び出す):
サーブレットでは、次の行を追加する必要があります。
javascript - Firefoxのページ読み込み時にEventSourceリスナーが起動しない
他の(すべての)ブラウザで動作するときにFirefoxで動作しない理由について少し混乱しています。
EventSourceの初期化とリスナーの登録:
次に、ページの読み込み時にクエリ文字列を調べ、ファイルと実行アクションがある場合は、それらをサーバーに(ajax経由で)送信し、サーバーは上記で登録されたリスナーにデータを送り返します。
スクリプトをたくさんデバッグしました。それは要求を送信し、有効な応答を受信し、サーバーは確実にリスナーにデータを送信します。
ただし、Firefoxでは、リスナーはまったく反応しません。
ユーザーが[実行]ボタンをクリックすると、リスナーが完全に機能することに注意してください。このボタンは、ファイルと実行がクエリ文字列で見つかった場合にページの読み込み時に呼び出されるのとまったく同じ関数を呼び出します。
また、alert()
ページの読み込みを起動してユーザーがクリックすると、リスナーが機能します。
さまざまなブラウザで試すためのライブリンクは次のとおりです。
http://cibox.org/slivu/stackoverflow?file=extract-image.rb&run=true
ありがとうございました。
php - PHP イベント ソースが実行を続ける
JavaScript EventSource オブジェクトを使用して、HTML5 でプッシュを使い始めました。私はPHPでの実用的なソリューションに完全に満足していました:
しかし突然、MySQL エラー「接続が多すぎます」で WebApp に到達できなくなりました。
JavaScript でイベント ソースを閉じた後、MySQL 接続が閉じないことが判明しました。
したがって、PHP スクリプトの実行は停止しないと思います。die();
クライアント接続が切断される前に関数 ( など) を呼び出す方法はありますか? .close();
EventSourceを呼び出した後、スクリプトが終了しないのはなぜですか?!
手伝ってくれてありがとう!—</p>
ios - iOSでサーバーが送信するイベントにWebkitの代替として推奨される
ネイティブiOSアプリでサーバー送信イベントを受信したいのですが、webkit/Safariを使用していません。私が見つけたところによると、NSURLConnectionは応答をチャンク化するため、適合性が低くなっています。ZTWebSocketライブラリも調べました(明らかに素晴らしいですが、WebソケットではなくSSEを探しています)。CocoaAsyncSocketは適切でしょうか?または、純粋なTCPソケット通信に限定されますか?
明らかな何かが欠けている、またはこのためのライブラリまたはサンプルがすでに存在するのではないかと、こっそりと疑っています。前もって感謝します。