SignalR客户端服务器已连接,但未将数据推送到生产服务器上的客户端

时间:2018-11-19 06:19:07

标签: signalr signalr-hub signalr.client

我已经使用SignalR开发了一个Web应用程序,它可以在我的开发服务器上完美运行。但是由于某些未知原因,它无法在生产服务器上运行。

我已经做了一些测试:

$.connection.hub.start().done(function () {

        console.log('started');

});

这总是使我的“开始”进入控制台。因此客户端和服务器已连接。但是当我发送任何数据(例如登录凭据)时,我什么也收不到。

这是连接框架图像。如您所见,客户端正在向服务器发送数据,但未收到任何响应。

enter image description here

public override Task OnConnected()
{

        Clients.All.Listen("Connected to HUB");

}

客户端监听方法:

hub.client.listen = function (response) {

    console.log('Listen', response);

}

有一个我用来调试的Listen方法。这不会打印任何内容。因此信号发送器客户端服务器未连接。

编辑:

此处报告的问题:https://github.com/SignalR/SignalR/issues/4279(如果有帮助)。

EDIT2:

我的Web应用程序是Vue js 2应用程序。我使用vue-cli编译并上传到服务器。我的signalr.js文件是从ASP.NET MVC项目复制的。

我使用SignalR 2.4开发了一个Test ASP.NET MVC 5应用程序,并且能够在实时服务器上进行通信。

1 个答案:

答案 0 :(得分:0)

https://docs.microsoft.com/en-us/aspnet/signalr/overview/testing-and-debugging/troubleshooting

IIS问题

本节包含Internet Information Services的问题。

SignalR可在Visual Studio开发服务器上使用,但不能在IIS中使用

  IIS 7.0和7.5支持

SignalR,但必须添加对无扩展名URL的支持。添加对无扩展名的支持   网址,请参阅https://support.microsoft.com/kb/980368

     

SignalR要求在服务器上安装ASP.NET(默认情况下,IIS上未安装ASP.NET)。要安装ASP.NET,请参阅ASP.NET   下载。