2014-11-24 115 views
1

IM目前正試圖獲得SignalrR 2.0在我的ASP.NET MVC應用5的工作,但事情發生可怕的事情。我一直得到這個錯誤:SignalR缺少JSON解析器錯誤

SignalR: No JSON parser found. Please ensure json2.js is referenced before the SignalR.js file if you need to support clients without native JSON parsing support, e.g. IE<8.

這是奇怪的考慮這應該是一個IE錯誤,我在Chrome中運行我的應用程序。

只是爲了說清楚,我正在嘗試將SignalR與我現有的Angular應用程序結合使用,這不應該成爲問題,因爲我只是在SignalR上進行抽象以使其成爲可能在我現有的應用程序中更容易使用。

事情我已經嘗試:

  1. 我已經嘗試切換jQuery的版本從2.1.1到1.10.2,但是這並沒有做到這一點。
  2. 我試圖引用Json2庫。但是那也行不通。

我真的需要一些幫助在這裏。我可以提供各種代碼片斷如果有必要:-)

只是爲了澄清。我並沒有針對IE8,但我的目標是Chrome的最新版本。

+0

如果沒有'DOCTYPE '在html中聲明,請做到這一點 - http://www.w3schools.com/tags/tag_doctype.asp,我早些時候遇到類似的問題,這使得魔術,希望,現在它會做同樣的事情。 – 2014-11-24 18:14:46

+0

這裏不是問題。但是,感謝您的評論:-) – 2014-11-24 18:18:27

+0

我不知道,這是一個JavaScript的問題。 JSON.parse()在Chrome,Firefox和IE9中運行良好。 – istos 2014-11-24 18:28:29

回答

1

所以顯然你不能將$ .connection.start方法分配給不同範圍的屬性。

以供將來參考,永遠不會做這樣的事情:

var obj = { 
    start: $.connection.start 
}; 

確保包裝在另一種方法,能夠解決這樣的:

var obj = { 
    start: function() { return $.connection.start(); } 
};