我使用了SignalR开发了一个Web应用程序,在我的开发服务器上完美运行。但是由于某些未知原因,在生产服务器上无法正常工作。
我进行了一些测试:
$.connection.hub.start().done(function () {
console.log('started');
});
这总是按预期在控制台中显示我的“已启动”信息。因此,客户端和服务器已连接。但是当我发送任何数据,如登录凭据时,我没有收到任何回应。
这是连接帧图像。正如您所看到的,客户端正在向服务器发送数据,但没有收到任何响应。
public override Task OnConnected()
{
Clients.All.Listen("Connected to HUB");
}
客户端监听方法:
hub.client.listen = function (response) {
console.log('Listen', response);
}
我使用Listen方法进行调试,但没有输出任何内容,因此SignalR客户端和服务器未连接。
编辑:
在这里报告问题:https://github.com/SignalR/SignalR/issues/4279,如果有帮助的话。
编辑2:
我的Web应用程序是Vue js 2应用程序。我使用vue-cli编译并上传到服务器。我的signalr.js文件是从一个ASP.NET MVC项目复制而来的。
我创建了一个使用SignalR 2.4的测试ASP.NET MVC 5应用程序,并且能够在实时服务器上通信。