2012-01-30 86 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

相关问题