問題タブ [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.
asp.net-mvc-3 - SignalR .Net クライアントが接続に失敗する (更新: 認証 Cookie の設定方法?)
このことは私を夢中にさせています。
.net 4.0 コンソール アプリと MVC Web アプリがあります。
JavaScriptクライアントはサーバーに接続して通信できます-ここでは問題ありません...
しかし、私の.netクライアントはSystem.AggregateException with InnerException = "値の解析中に予期しない文字が発生しました: <.パス...
そのため、空の MVC3 アプリを作成し、SignalR ライブラリを追加すると、驚くべきことに .net クライアントがそれに接続します。しかし、何らかの理由で、それは他のものにはありません。私はすべてをチェックしました.MVC3アプリは両方とも同じSignalRライブラリ、同じNewtonsoftJsonを使用しています...ルーティングに何かあるに違いないと思いました.jsクライアントは動作します.
どうなり得るか?
UPD:私は考えました...サーバー上の FormsAuthentication が原因です。サーバーに接続できるように、.ASPXAUTH Cookie を SignalR にフィードする方法はありますか?
ios - SIgnalRiOSクライアントがconnectionIdとプロトコルバージョンに対してnullを返す
私のiOSアプリを統合して、ローカルネットワーク上の開発サーバーにセットアップしたMVC3(フレームワーク4)SignalRプログラムと連携させようとしています。このために作成されたWebサイトは、ネットワーク全体で正常に機能します。
ただし、SignalR iOSクライアントを使用しようとすると、次のエラーが発生します。
SRConnection.m内でNSLog()を使用した後、アプリがネゴシエーションを行っているときに正常にネゴシエートしているが、connectionIdまたはプロトコルバージョンを取得していない場合、これらはnullを返すことがわかりました。
appDelegateのapplication:didFinishLaunchingWithOptions:関数で接続を設定しています。これが私が接続を設定する方法です:
サーバーの接続ログも確認しました。リクエストを受信し、毎回200のステータスコードを返します。
私が使用している接続コードは、http://chrisrisner.com/iOS-and-Windows-Azure-Communication-using-SignalRから取得しました。
例でURLとハブ名を使用してみましたが、次のようなconnectionIdとプロトコルバージョンで問題なくネゴシエートします。
これはすべて、iOS5.1の展開ターゲットを持つiOSsdk6のiPadシミュレーターにも含まれています。
これに関するどんな助けも素晴らしいでしょう
乾杯
asp.net-mvc-3 - ブラウザー経由で SignalR ハブにアクセスする
ブラウザ経由で signalr ハブにアクセスするにはどうすればよいですか? 「testhub」という名前のハブ(HubName
プロパティを使用)とその中に「Hello」メソッドを作成したので、次のようにアクセスしたいと思います。http://serverurl/signalr/testhub/Hello
signalr - Windows アプリの SignalR
WindowsアプリにsignalRを実装する方法の例を誰かに見せてください。サーバー側の起動時にメッセージボックスを表示する必要が頻繁にある
signalr - IIS 6/Windows サーバー 2003 R2 での SignalR 構成
IIS 6 / winSrv 2003 r2 にデプロイされた Web アプリで signalr/hubs URL にアクセスすると、エラー 404 が発生します。
runAllManagedModulesForAllRequests = true と false を試しました。ただし、#issues の 1 つで、これは II7 および > 用であるというコメントを見つけました。
また、ワイルドカード マッピングを v4.0.30319\aspnet_isapi.dll に設定しても、同じエラー 404 が発生します。
IIS 6 ログ エラー:
W3SVC1 127.0.0.1 GET /devweb/signalr/hubs - 80 - 127.0.0.1 Mozilla/4.0+(互換;+MSIE+7.0;+Windows+NT+5.2;+Trident/4.0;+.NET+CLR+1.1.4322 ;+.NET+CLR+2.0.50727;+.NET+CLR+3.0.4506.2152;+.NET+CLR+3.5.30729;+.NET4.0C;+.NET4.0E) 404 0 3
Win7 で IIS 7 に展開すると、正常に動作します。一部の顧客に展開できるように、IIS 6 でも動作させる必要があります。
asp.net - SignalR ハブ内の完全な URL を取得する
ASP.NET MVC アプリケーション用に、SignalR を学習するための楽しいプロジェクトとして、SignalR を使用してユーザー トラッキング ソリューションを開発しています。
現在、ログに記録されたユーザーと、特定のページにいる時間を追跡できます。それらが別のページに移動すると、それも追跡し、SignalR が更新しているタイマーがリセットされます...他の多くの機能が実装されているか、部分的に実装されています。
私が直面している問題は、SignalR ハブ内の完全な URL コントローラー/アクション/パラメーターを取得する方法ですか?
私が使用する場合HttpContext.Current.Request.Url
、URLは常に/signalr/connectです。
ノート:
_Layout.cshtml にあります。
アップデート:
私は使用しようとしました
場所は正しく渡されますが、後で Connect() タスクで必要です。これを行うことは可能ですか?
更新 2:
このアプローチは機能しません
が以前に呼び出されたConnect()
ように。
私のハブにはいくつかの方法がありますが、値 (私の場合は場所) をに渡したいのですConnect()
が、それは可能ですか?
アップデート 3
QueryString を使用して、Connect()
発生する前にデータを渡します。
signalr - ASP.NET 内の「n」個の SignalR ハブをホストします (ただし、MEF は含まれています)。
別の MVC3 アプリケーションが通信する多数の SignalR ハブをホストする必要がある ASP.NET Web プロジェクトがあります。
私の主な問題は、MEF を実行する必要があるため、ホストするハブが実行時までわからないことです。(IXXXHub タイプの) エクスポートを含む DLL は、ASP.NET Web の bin ディレクトリにあります。サイト。現時点では、AHub、BHub、および CHub の 3 つのエクスポート可能なタイプがありますが、さらに多くのタイプが存在する可能性があります。たとえば、DHub は後で実装される可能性があります。
ASP.NET Web プロジェクトでホストする方法を示す SignalR サンプルを確認したので、混乱している部分は、MEF を取得して、AHub/BHub/CHub のそれぞれの 1 つをホストしようとすることです。Application_Start を使用してさまざまなアプローチを検討しましたが、その方法がわかりませんでした。
誰にもアイデアがありますか?
performance - HubConnection での SignalR のパフォーマンスの問題 (サーバー内の多数のスレッド、配信間の長い遅延)
SignalR のパフォーマンスをテストして、ソフトウェアに使用できるかどうかを確認するためのプロトタイプを作成しました。そのプロトタイプでは、PersistentConnection と HubConnection を介してクライアントにデータを転送する両方をテストしました。
当社のストレステストは、次の 3 つのコンポーネントで構成されています。
- ハブに登録してメッセージをサブスクライブする 1 つの「クライアント」
- メッセージの受信と転送を担当する 1 つのハブ (セルフホステッド)
- 各スレッドがハブを介してクライアントに 1000 個のメッセージを送信する 5 つのスレッドを含む 1 つの「ドライバー」
PersistentConnection はかなり安定して動作しますが、HubConnection では、ハブ内に多数のスレッドがあり、数百パケットごとに長い遅延 (1 ~ 10 秒の間で変化) があることに気付きました。遅延は主にハブ内で発生します (また、ハブとクライアントの間でも発生します)。また、「ドライバー」からハブへの配送にもわずかな遅延があります。遅延とは、ハブへのメソッド呼び出しが (ドライバーで) 遅延を返すこと、またはクライアントの受信メソッド呼び出しがかなり後で呼び出されることを意味します。時々、いくつかのメッセージが失われます (クライアントに配信されません)。
それはどこから来るのでしょうか?これは既知のバグですか? 微調整できるオプションはありますか? リクエストに応じて提供できる実用的な例として、完全なソリューションがあります。
Thxアレックス
c# - SignalR は単一の connectionId にメッセージを送信します
asp.net クラシック Web サイトがあります。SignalR の基本機能が動作するようになりました (1 つのクライアントが残りのクライアントにメッセージを送信する場合)。しかし、今は特定の接続 ID にのみメッセージを送信したいと考えています。
私のハブ:
ASP コード:
Clients.updateMessages(メッセージ); それらすべてにメッセージを送信します。どうすればこれを解決できますか?
PS: すでに見ました: Signalr/PersistentConnection を使用して、接続されたクライアントにサーバー メッセージを送信します。
およびhttp://riba-escapades.blogspot.dk/2012/05/signalr-send-messages-to-single-client.html
それはうまくいきませんでした。
asp.net - ページからナビゲートするときにページの読み込み中にエラーが発生しましたが、signalRが中断しました
signalR接続/接続されたハブがあるページから移動すると、次のエラーメッセージが表示されます。
「 http:// localhost:53604 / signalr / signalr / connect?transport = serverSentEvents&connectionId = 0b308c0d-2122-4e60-a9fa-f6e3f3eb1f4e&connectionData =%5B%7B%22name%22%3A%22packageactionstatus%20%22%7Dへの接続ページの読み込み中に%5D&tid =9"が中断されました。
ページから移動したために接続が失われたことは理解していますが(現在のページから移動する前に接続を停止する安全な方法はありますか?)