問題タブ [signalr-hub]

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 に答える
1475 参照

signalr - SignalRハブへのクライアント接続の数を確実にカウントする

テスト環境のステータスを表示するWebダッシュボードを作成しています。

ハブを使用してブラウザーをサーバーに接続し、環境のステータスをポーリングするバックグラウンドタスクを実行します。少なくとも1つのクライアントが接続されている場合にのみ、このチェックを実行したいと思います。

私のハブは少しこのように見えます:

これは主に機能しますが、OnConnectedが呼び出されることもありますが、OnDisconnectedは呼び出されません。

1つの特定のケースは、Chromeを開いてページのアドレスを入力したが、実際にはそのページに移動しない場合です。Chromeはページをプリフェッチして接続しているようですが、切断されていないようです。

したがって、2つの質問:

  1. これは接続をカウントするための良いアプローチですか(Webファーム環境で実行することは決してありません)?
  2. Chromeからのこれらのゾンビ接続は最終的にタイムアウトしますか(タイムアウトを非常に低く設定しようとしましたが、それでも切断されませんでした)?
0 投票する
2 に答える
4525 参照

c#-4.0 - SignalRグループがデータを取得していない

こんにちは私はグループにいる私のsignalRクライアントが送信された情報を受け取らないという問題を抱えています。

私はこれを2つの方法で試しましたが、どちらも機能しません。

ロードされたWebページで、クライアントはサーバーを呼び出してグループ名を取得し、ハブのメソッドを呼び出してそのグループのユーザーに参加します。

JavaScript.....。

コントローラ

myHub

コードを何度もステップスルーしましたが、接続してグループに参加していることがわかりますが、グループに送り返そうとしても何も起こりません。

コントローラーからこれを使ってグループに送っています

これは私が試した2番目の方法です。ハブからグループに送信しようとしましたが、それでも喜びはありません。

どんな助けでも大歓迎です...

更新 これはDavidFowlerのおかげで修正されました...。

これは、HubName属性を使用してハブに別の名前を付け、次にlongPollingトランスポートを使用してsignalRを付けていたためのバグでした。属性を削除すると、これは作業を知ることができます。修正も提供されていますhttps://github.com/SignalR/SignalR/issues/1039を参照してください

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

signalr - 接続 ID が有効かどうかを確認する方法はありますか?

それぞれがメッセージ バスに接続されている複数の SignalR インスタンスを含むシステムを構築しています。

接続 ID が与えられた場合、接続 ID が有効かどうかを確認する方法はありますか? そうでない場合、サーバー側でこれを行うためのベストプラクティスは何ですか?

ありがとう

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

signalr - SignalR のラウンドトリップ状態を使用する方法は?

SignalR のハブ (https://github.com/SignalR/SignalR/wiki/Hubs) のドキュメントによると、「ラウンドトリップ状態」と呼ばれるものを使用できます。しかし、.NET クライアント側でこの機能を使用する方法がわかりません。

サーバーと .NET クライアントの間でその機能を使用する簡単な例を教えてください。

ありがとう、

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

signalr - SignalRIE9クロスドメインリクエストが機能しない

SignalRを使用してアプリケーションを作成しています。

ハブは、IIS8を搭載したWindowsServer2012を実行している1台のサーバーに配置されます。http ://mentor.cloudapp.net/mass/rexona/previa/signalr/hubs

クライアントはここにあります:http: //massdeveloperstage.com/Rexona/Site/colombia/Previa/Match?matchId = 6F318A29-3400-444B-95D9-7EC41A7AD2D4

Signalrのセットアップは次のようになります。

Chrome、FF、Opera、IE10ではすべてが完全に機能しますが、IE9を使用してアクセスすると、アプリケーションは失敗します。

接続の設定で何かが足りませんか?IE9を使用するには、サーバーで他の何かを有効にする必要がありますか?

ありがとう。

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

signalr - ASP.NET SignalR がクライアントにメッセージを送信しない

SignalR と ASP.NET SignalR の間に重大な変更があることを認識し、それに対応するようにコードを変更しました。しかし、何らかの理由で、正しい変更を理解できません。

私が抱えている問題は、サーバーがクライアントにメッセージを送信していないことです。

古い SignalR コード:

サーバ

クライアント

新しいコード (ASP.NET SignalR):

サーバ

クライアント

誰かがここで何が問題なのかを理解するのを手伝ってくれますか?

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

signalr - SignalR 1.0.0Alpha2でOnDisconnected()の呼び出しを遅らせる方法

現在、SignalR1.0.0Alpha2を使用しています。OnDisconnectedメソッドをオーバーライドしました(以前は、Disconnect()を実装して同じ機能を実装していました)。しかし、私が直面している問題は、ページの更新または切断時に、OnDisconnectedがすぐに呼び出されることです。私の理解では、20秒後に呼び出す必要があります(DisconnectTimeoutのデフォルト値が20秒であると想定しています。

アプリケーションの要件として、約30秒後にOnDisconnectedが呼び出されるようにします。ドキュメントに従って、DisconnectTimeoutをより高い値に設定しようとしましたが、それは役に立ちません。

0.4.xバージョンに戻ると、DisconnectTimeoutを正常に実装でき、遅延は尊重されました。しかし、0.5.3以降、この動作は見られません。

何が間違っているのかわかりません。必要なのは、OnDisconnctedがすぐに呼び出されないことです。

0 投票する
4 に答える
33891 参照

c# - SignalR - ユーザーがまだ接続されているかどうかを確認する

クライアント側と呼ばれるメソッドを持つハブがあります。このメソッドは、10 秒ごとに実行されるデリゲートでタイマーを起動します。誰もハブに接続していない場合、このデリゲートを実行し続けるのは意味がないため、スケジュールを変更する前に、デリゲート内からまだ接続しているユーザーがいるかどうかを確認したいと思います。これを行う方法はありますか?

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

.net - SignalR ペイロードは不可知論的ですか?

SignalR は、BSON などの JSON またはテキストを含むもの以外のペイロードをサポートしていますか?

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

asp.net - signalR OnDisconnected()キャンセルタスク

ページが読み込まれると、ハブで新しいタスクを開始します。このタスクは、特定のhtml要素を更新するデータをブラウザーに送信します。ページから離れて閲覧するとき、タスクを停止したいと思います。

問題は、タスクが停止する前に(sleep引数のため)、tokenSource = new CancellationTokenSource(); このタスクの前のインスタンスが停止する前に新しいが設定されることです。

私がやろうとしているのは、そのページからsignalRを必要としない別のページに移動するときにタスクを停止させることです。ただし、同じページを更新するだけの場合は、停止しないでください。方法がわからない。要約すると、このタスクの1つのインスタンスのみが実行されていることを保証したいと思います(そして、それを必要とする/またはリスナーを持っているページでのみ)情報は大歓迎です。ありがとう

コード: