問題タブ [ajax-polling]

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.

0 投票する
1 に答える
963 参照

ajax-polling - Javascript を使用してポーリングしますが、時間間隔が異なります

私はJavascriptでポーリングを使用してajaxで情報を取得していますが、まったく同じ時間間隔で取得しています。

情報がさまざまな時間間隔で入ってくることがわかったので、さまざまな時間間隔でポーリングを行いたいと思います。例えば:

最初のリクエスト: 2 秒後 - > 非常に重要で、2 秒後です! 2 番目のリクエスト: 7 秒後 3 番目のリクエスト 15 秒後 4 番目のリクエスト 25 秒後

良い可能性はありますか?

0 投票する
1 に答える
919 参照

asp.net-mvc-3 - MasterPage での jQuery Mobile トランジションと AJAX ポーリング

jQuery で AJAX ポーリングを使用して、ASP.NET MVC3 の razor MasterPage のスパン要素を更新しようとしています。このページでは、単純なビューの変更 (/home から /about への移動など) をある種の「遷移」アニメーションで装飾する jQuery Mobile 1.0 フレームワークを使用しています。

これはポーリングを行う Javascript コードであり、"unreadBubble" スパンは本体に配置されています。どちらも MasterPage で定義されています。

したがって、MasterPage を使用し、Index ビューを提供する HomeController と NotificationController があるとします。AJAX ポーリングは両方のビューで機能し、期待どおりに毎秒スパンを更新します。ただし、あるビューから別のビューに移動するとすぐに、スパンは MasterPage のデフォルト値 (空) で再初期化され、更新されなくなります。興味深いことに、非同期の GetUnreadNotificationsCount メソッドはまだ NotificationsController で繰り返し呼び出されています。スパンは更新されません。また、JS で span タグを警告しようとしましたが、null などではありませんでした。

ドキュメントによると、jQuery Mobile は AJAX を使用して新しいページも読み込み、この手の込んだ「SWOOSH」遷移アニメーションを挿入します。これは、何らかの形で JS/DOM の初期化を妨げているようです。

これを解決する方法はありますか?別のイベントにバインドする必要がありますか、またはどうにかしてスパン タグを強制的に更新できますか?

解決策: キャッシュの問題でした。以下はトリックを行いました: class="command-no-cache"をページ div に追加します 次の JavaScript を MasterPage に追加します:

});

0 投票する
2 に答える
2987 参照

php - あなたのウェブサイトでロングポーリングまたはAjaxプッシュを使用する方法

ajaxpushの使い方を知りたいです。さまざまなWeb記事から、COMET、APE(AJAX PUSH ENGINE)などのいくつかのプログラムを使用してAjaxプッシュを取得できることを学びました。しかし、もっと簡単な使用方法があるかどうか、どの言語が使用されているかを知りたいです。 ajaxプッシュを実装します。私が見た記事の中で。彼らはJavaを使用しています。私は学びませんでした:(だから私はあなたのサーバーに特定のアイテムに間隔を設定するjavascriptのようなものがあるかどうか知りたいですそしてそれから何か変更が見つかったらphpを使ってそれをエコーし​​ます。?助けてくださいこのために。1週間が経ちました。これを達成しようとしました。間隔を使用して通常のajaxとphpを使用しようとしましたが、結果を得ることができませんでした。ありがとうございます。PS:例を使用して簡単な使用方法を教えてくださいか何か。

0 投票する
0 に答える
405 参照

jquery - jQueryはAJAXリクエストを再送信しますか?

jQuery AJAX jQuery リクエストに奇妙な問題があります。サイトでレポートを生成するときは、しばらく時間がかかることがあるため、ポーリングで更新するステータス バーがあります。しかし、私が見ているのは、これらの要求がタイムアウトして再送信されているように見えるということです。これは非常に奇妙な動作です。

ワークフローは次のとおりです。 - ユーザーが電子メール アドレスを入力し、[レポートを取得] をクリックします。 - ボタンが AJAX 要求をトリガーします (以下を参照)。-AJAX リクエストを作成した後、checkStatus 関数をポーリングするための 2 番目の単純なリクエストを送信します。この関数は、画面上のステータス バーを更新するコールバックに JSON 文字列を返します。-元の AJAX リクエストの「成功」プロパティで、ポーリングを停止するフラグを設定したため、レポートが完了すると、ポーリングが停止します (そして、最後のステータスの更新は完了したことを反映します)。

1 つの小さな問題を除いて、これは完全に機能します。大きなレポートがあると、ユーザーが実際に何もせずに 2 番目の getReport リクエストを送信しているように見えます。これは、ステータスが 1000 行中約 700 行になり、1000 行中 15 行、1000 行中 710 行、1000 行中 25 行にジャンプするため、2 つのレポートが同時に生成され、ステータス フラグが更新されていることを示しています。さまざまな状態で。

私が把握できるのは、元の getReport AJAX リクエストが何らかの理由で再送信されていることだけです。タイムアウトまたは私が認識していないものはありますか?

コードは次のとおりです。

0 投票する
2 に答える
27608 参照

html - サーバー送信イベントとポーリング

HTML5 SSEとストレートアップAjaxポーリングの間に(パフォーマンス、ブラウザー実装の可用性、サーバー負荷などの点で)大きな違いはありますか?EventSourceサーバー側から見ると、指定されたページに3秒程度おきにヒットしているように見えます(タイミングは柔軟だと思いますが)。

確かに、タイマーを設定して頻繁に使用するよりも、クライアント側で設定する方が簡単$.getですが、他に何かありますか?送信するヘッダーが少なくなりますか、それとも私が見逃している他の魔法を実行しますか?

0 投票する
3 に答える
11110 参照

ajax - setTimeoutを使用してポーリング間隔を制御するjQuery再帰ajaxポーリング

これはサーバーが応答できる限り速く実行し続けますが、5秒ごとにのみポーリングすることを望んでいました。助言がありますか?

編集:追加する必要があります。リクエストが完了してから5秒後が望ましいでしょう。

0 投票する
1 に答える
6659 参照

ajax - AJAX / Reverse AJAX:ポーリングまたはプッシュ?

私はJavascriptとPHPからリアルタイムアプリケーションを作成しているので、AJAXについてたくさん勉強しています。ページを更新せずにリアルタイムで更新できる必要があります。

setInterval()を使用してサーバーをポーリングしようとしましたが、すばやく実行するには、毎秒サーバーをポーリングする必要がありました。ただし、大量の帯域幅を使用しているようです。ただし、それは機能し、ホスティングプロバイダーと「無制限の帯域幅」の計画があります。でもサイトにストレスが溜まっているようですので、プッシュ技術を使いたかったのです。

プッシュの設定方法を学ぶことは非常に困難でした。私が何とか理解したことから、あなたはある種のプッシュサーバーまたはコメットサーバーをホストしなければなりません。WebSocketも調べましたが、そこでも自分でホストする必要がありました。サーバーコンピューターを所有しておらず、ホスティングプロバイダーのWebサイトにこれに関するドキュメントがない場合、その方法がわかりません。

特定のホスティングプロバイダーがプッシュサーバーをホストしていますか?サーバーをホストせずにサーバーを取得する方法はありますか?ポーリングよりもはるかに良い選択のように思えますが、同時にそれは非常に混乱しているようです。

0 投票する
2 に答える
142 参照

javascript - Ajaxポーリングの挿入

以下の現在のコードにAjaxポーリングを挿入して、ユーザーの投稿がex秒ごとに更新され、ステータスや追加された新しいコメントの数など、データベースに追加された新しいコンテンツが表示されるかどうかを知りたいです。作成したフィード内のタイムスタンプ。これが私がこれまでに持っているものです。

0 投票する
2 に答える
519 参照

javascript - データのみを更新するAjaxポーリング

他のユーザーから新しく挿入されたステータス、タイムスタンプ、追加されたコメントの最新量などを更新するには、ユーザーストリームを10秒ごとに更新する必要があります。

これで以下を使用できますが、テキストエリアに投稿するときに直面する問題は、ユーザーが投稿したステータスが挿入されるまでに10秒かかり、その後10秒ごとに同じステータスが追加されることです。別のID。

ポーリングで必要なのは、insert.phpページにエコーアウトするデータを選択することだけで、実際には10秒ごとに新しいコメントを追加することはありません。応答データを選択するだけで、これを別の方法で行うことは可能ですか?

HTML/PHPページ

ストリームアイテム関数の作成

0 投票する
2 に答える
193 参照

javascript - ajaxポーリングでdivの最後のクラスを送信するには?

ajaxPoll チャット システムに問題があります。チャット メッセージの最後の ID を に返信しようとしてdivいますphp。そのため、クエリは最後に送信された ID よりも大きい結果のみを表示できます。

すべてのチャット メッセージは、div呼び出されchat_logた . メッセージにはdiv、メッセージの ID のクラスを含む があります。テキストのmessage後にそのメッセージの ID が続きます (例: class="message543". 分かりやすくするために、構造と正しい順序で HTML のサンプルを示します。

ご覧のとおり、div max には 7 つのメッセージがあります。それよりも高いメッセージはすべて消去されます (問題なく動作する場合はすべて、ほんの少しの追加情報です)。もう 1 つの注意点として、jqueryライブラリと jquery プラグインを使用しています ここ、このブログ投稿の功績による. (プラグインの機能に関する情報は、そこにあります。)


私が試したこと:


このコードは文字列 'message' を取り除き、番号を取得します。コード:

...コンソールに貼り付けたときに正しく機能し、正しい最後divのメッセージを出力しますid

ただし、非手動で実行された場合はそうではありません (おそらく、関数やループなどではないため)、コードは何らかの理由で、 +の0メッセージが他にある場合にのみ ' ' を送信します。など、他にも多くのことを試しました。問題を引き起こしている可能性があると思われることの1つは、変数のスコープです。ポーリングの成功が呼び出されたときに、変数が調整されないようです。ただし、これが事実であるかどうかは完全にはわかりません。その場合は、コードが正しく機能するように変数のスコープを修正する方法をサポートしていただければ幸いです。id1000setIntervalfunctionlastId

余談ですが、php は正常に動作しているため、サポートは必要ありません。

重要な編集 (問題を理解しやすくする):コード

...問題なく動作します。問題のように見えるのは、その周辺 (構造) です。また、スクリプトが送信された場所をphpに伝えるだけで、whereこれには関係ありません。where最初に呼び出された に追加された div があることを認識しています。これは、最初のを としてtest定義することです。ループは最新の の取得を処理する必要がありますが、そうではありません。lastId0lastId

私が発見したこと: lastIdajaxPoll で編集されていません。div から正しい lastId を取得しますが、編集しませんlastId。これにより、スコープの問題であることがほぼ明確になります