當我們的項目運行.net 4.0時,我安裝了SignalR軟件包。我們升級到4.5,我想支持WebSockets。我卸載了信號包並重新安裝了SignalR(per this answer)。但是SignalR DLL版本(1.1.0/1.1.3)在兩種情況下都是相同的。什麼版本的SignalR支持WebSockets?
這裏是我的配置:
- ASP.NET 4.5
- IIS 8.0(Windows Server 2012中)
- 的WebSockets功能在服務器上啓用
- 一個的WebSocket支持瀏覽器(Firefox的最新版本)
即使我有所有這些需要的東西,我仍然得到這個:
{ 「地址」: 「/ signalr」, 「ConnectionToken」: 「Yy6qHcSMMm4vPl9i3ungxJ5aa2P0SJh4UoU4pelAyFcMud0596UaeB6x8AmhZ2SxW_MPk23QXrKGkwar7LjLLnWlBZx1nokd6LRe96k8D-Oua3kSnKsyDa1RrPTE0n9FyaUO9rK3caLfue20Dmx5UkB9F2TKusPD4PDqQw2」, 「的ConnectionId」: 「b7b00e98-3128-4fbb-ba63-fb16f922f168」, 「的KeepAliveTimeout」:20.0, 「DisconnectTimeout」 :30.0, 「TryWebSockets」:假的, 「WebSocketServerUrl」:空, 「ProtocolVersion」: 「1.2」}
我想重要的部分是:
"TryWebSockets":false,"WebSocketServerUrl":null,"ProtocolVersion":"1.2"
這是否意味着我不是使用WebSocket S'我可能會錯過什麼?
非常感謝。
謝謝,我掌握了所有這些東西,這就是爲什麼我對此感到困惑爲什麼WebSockets不被使用(我只是假設它沒有被使用基於來自服務器的迴應,我把它包括在我的問題中)。 –
從您的協商響應來看,即使客戶端嘗試執行WebSocket連接,它也會失敗。這是因爲你的「TryWebSockets」設置爲false,所以服務器說它不能處理它。我同意@ Ruchira的迴應,下面說你可能在從4.0轉換到4.5時有錯誤的步驟,因爲你已經擁有了一切。 –