2013-01-17 68 views
0

我正在嘗試將signalr與現有的asp.net表單Web應用程序集成。如何解釋來自信號連接請求的json響應

在最初連接成功後,服務器端回到客戶端js函數,signalr似乎在維護連接時遇到了問題。我正在開發Windows 7機器,因此10個連接限制使調試有點具有挑戰性。但是,我看到出現在網站被部署到2003企業版時是同樣的問題。服務器,所以我不認爲我看到一個連接限制問題(我隨時準備糾正,雖然)

看着小提琴手,我最終得到了200的連接請求,但唯一的JSON我回來了這個:

{"C":"B,0|7,4|8,0|9,0","T":1,"M":[]} 

我不知道這代表什麼。最初,當連接成功後我得到這個(其中包括數據有效載荷我預計):

"C": "B,0|BK,1|BL,0|BM,0", 
"M": [{ 
    "H": "notifyHub", 
    "M": "notificationReceived", 
    "A": ["[{\"TransitionNotificationId\":527,\"AuthorizationJobId\":53,\"TransitionType\":2,\"IsWorkShop\":true}, 
      {\"TransitionNotificationId\":528,\"AuthorizationJobId\":53,\"TransitionType\":12,\"IsWorkShop\":true}, 
      {\"TransitionNotificationId\":580,\"AuthorizationJobId\":61,\"TransitionType\":2,\"IsWorkShop\":true}]"] 
    }] 

如果我能在「失敗」要求解釋JSON正確我不得不到哪裏尋找一個想法問題。

提前歡呼。

回答

1

T:1表示您有連接超時。使用longpolling時,連接將每隔120秒超時(默認情況下)。這是因爲大多數負載均衡器/代理會在某個時間後終止空閒連接。其他運輸工具發送一個保持活動狀態以阻止這種情況發生。

至於有效載荷的其餘部分:

C: Cursor 
M: Messages 
    H: Hubname 
    M: Method name 
    A: Method args 
T: Timeout 
D: Disconnect 
+0

這是偉大的。偉大的工作BTW – RelentlesslyLearning