2015-02-23 237 views
4

我想配置我signalR演示,以我的项目SignalR拒绝连接

框架:4.0SignalR版本:1.1.3

这里是我的代码

$(function() { 
      var connection = $.hubConnection('http://localhost:32555/'); 
      var chat = connection.createHubProxy('myChatHub'); 
      chat.on('send', function (message) { 
       $('#chat').html($('#chat').html() + "\r\n" + message); 
      }); 
      connection.logging = true; 
      connection.start().done(function() { 
       alert("Connection Complete"); 
       $('#sendBtn').click(function() { 
        chat.invoke('send', $('#message').val()); 
       }); 
      }).fail(function (param) { 
       console.log(param); 
      }); 
     }); 

Global.asax

protected void Application_Start(object sender, EventArgs e) 
     { 

      RouteTable.Routes.MapHubs(new HubConfiguration { EnableCrossDomain = true }); 
     } 

.CS

namespace vPortal 
{ 
    [HubName("myChatHub")] 
    public class LetsChat : Hub 
    { 
     public void send(string message,string userid,string Name) 
     { 
      Clients.All.addMessage(message, userid, Name); 
     } 
    } 
} 

当我试图运行我得到这个错误

SignalR: Error during negotiation request: 

的页面,但我已经启用代理的Global.asax的我曾尝试升级我的signalR到版本2.2.3。 但是,我的项目包与当前版本不兼容,所以我安装了版本1.1.3。

我不知道我在做什么错在这里我看到有一个连接,但无法建立。

+0

为什么启用EnableCrossDomain = true? – 2015-02-23 06:57:23

+0

@FrebinFrancis我已经看到的地方,他们从要启用您的应用程序跨域请求1.1.3 – 2015-02-23 06:57:56

+0

所以默认情况下禁用跨域?此外,我想知道你是如何包含在你的应用程序中的脚本文件signalR – 2015-02-23 07:00:44

回答

1

很多功劳去this男人。 他让我的问题容易解决。

见,首先我所有的引用都是以4.0那么所以我用Signalr旧版本1.1.4

这里是我的错误情形:

  1. SignalR无法连接: 我通过在我的Global.asax文件中添加行RouteTable.Routes.MapHubs();删除了此错误。

  2. 请求谈判:有由我做了一个愚蠢的错误的命名空间是在我chat.aspx页面不同。

  3. 版本冲突:请参阅我之前的库,它与signalR的当前版本(2.3.2)不兼容。所以,我必须坚持以前的版本(1.1.3),步骤给出here,它的整洁。

同样,我敢肯定我的代码signalR将正常工作:

所以,跑我聊天,我的第一个消息是成功则再次出现了错误之后的某个时间和错误是

the added or subtracted value results in an un-representable datetime. signlar 

所以,这是为me.This大头疼的是肯定没有跟signalR 我从frebin线索,我意识到,在我的网页。配置

<httpRuntime executionTimeout="180" maxRequestLength="512000" /> 

的executionTimeout以前的值为

我改变为180和它的作品罚款!

我已经加入对未来喜好的所有场景。