2012-01-30 52 views
1

我有一個示例SignalR JQuery客戶端應用程序,它幾乎與GitHub JQuery示例相同。如果我運行通過VS2008的應用程序,我得到以下錯誤: 「SignalR:連接必須可以發送數據前開始之前。發送調用。開始()()」。在VS2008中運行SignalR客戶端應用程序失敗

如果我從客戶端運行的應用程序瀏覽器在:http://localhost/SignalRClient,我得到一切按預期工作。

關於如何使用Visual Studio運行客戶端的任何建議?

<div> 
    <script type="text/javascript"> 
     $(function() { 
      var connection = $.connection('http://localhost/signalrserver/echo'); 

      connection.received(function(data) { 
       $('#messages').append('<li>' + data + '</li>'); 
      }); 

      connection.start(); 

      $("#broadcast").click(function() { 
       connection.send($('#msg').val()); 
      }); 
     }); 
    </script> 
    <input type="text" id="msg" /> 
    <input type="button" id="broadcast" /> 
    <ul id="messages"></ul> 
</div> 

謝謝。

回答

2

我也遇到了這個問題。由於.start()是一個異步事件,因此在連接完成之前你正在調用.send()。 .start()會在連接建立時觸發一個回調。您的代碼將如下所示:

$(function() { 
     var connection = $.connection('http://localhost/signalrserver/echo'); 

     connection.received(function(data) { 
      $('#messages').append('<li>' + data + '</li>'); 
     }); 

     connection.start(function() { 
      $("#broadcast").click(function() { 
       connection.send($('#msg').val()); 
      }); 
     }); 
}); 
+0

您好,我是SignalR的新手。我想知道是否可以在VS2008中實現SignalR?如果是,請指導我做什麼,或者你可以在VS2008中發佈SignalR的示例應用程序? – 2014-02-20 05:50:18

相關問題