9

Asp.NET MVCアプリケーションをテストしてSignalRを実行text/event-streamし、Visual Studio 2012、IIS Express(Microsoft-IIS / 8.0)、およびChromeを使用してserverSentEvents接続でMIMEを適切に処理しました。

実稼働環境(IIS 7.5、.NET Framework 4.5、Windows Server 2008R2)に展開しているので、タイムアウトが発生すると、SignalRは常にLongPollingトランスポートにフォールバックすることに気付きましsignalr/connect?transport=serverSentEvents etcた。

ServerSentEventsを機能させるようにMicrosoft-IIS/7.5を構成する方法はありますか?または、これは8.0以降でのみ可能ですか?

URLに直接アクセスしようとすると 'http://my.webapp.com/MyHub/signalr/connect?transport=serverSentEvents&connectionId=624849a4-45c6-458b-b6d0-f7cb023ab226&connectionData=%5B%7B%22name%22%3A%22myHub%22%7D%5D&tid=2'、SSEデータパケットのように見えるファイルが含まれています。

data: initialized

id: 14476
data: {"MessageId":"14476","Messages":[],"Disconnect":false,"TimedOut":false,"TransportData":{}}

そのため、タイムアウトがリクエストにヒットしている理由がわかりません。

4

2 に答える 2

7

私の場合、特定の構成は必要ありませんでした。SignalRがlongPollingにフォールバックするのは、サーバーが明らかにプロキシの背後にあるという事実に依存していました。

これをテストするには、ローカルホストをWebアドレスとして使用してサーバー上のハブサーバーへの接続を試すことをお勧めします-私の場合、トランスポートはserverSentEvents(Chromeを使用している場合)またはforeverFrame(IEを使用している場合)として正しく設定されています

ヘッズアップのユーザーdfowlerへのクレジット(詳細はこちら

于 2012-08-30T03:56:09.207 に答える