'client'为null或不是SignalR中的对象

时间:2014-01-24 13:16:10

标签: signalr

我使用VS 2010(4.0 frameWork)和SignalR版本1.1.3在我的LocalHost上成功运行SignalR应用程序,如下所示:

http://www.asp.net/signalr/overview/signalr-1x/getting-started/tutorial-getting-started-with-signalr

但是当我在IIS服务器上部署此Web应用程序时:

它将Javascript错误抛出

'client'为null或不是对象

我应该检查什么??

TIA

2 个答案:

答案 0 :(得分:0)

您是否有对客户端库和~/signalR/hubs

的脚本引用

答案 1 :(得分:0)

由于未正确包含动态信号器集线器文件而发生这种情况。在样本中,您可以参考:

<script src="/signalr/hubs"></script>

这在当地完全没问题。但是,如果要将该应用程序部署到IIS,则需要确保您的应用程序在ROOT上运行(如果您是服务器)。

我猜你在部署到IIS时,你是从一个端点托管它,比如localhost / mysignalrapp / YOUR_STUFF。如果是这种情况,/ signalr / hubs包含将不起作用。

如果您的项目尝试将include更改为:

,假设您的html文件位于根目录
<script src="signalr/hubs"></script>

这将使您的应用程序能够正确找到信号器端点。如果您的HTML文件恰好位于根目录下的文件夹中,请相应地调整路径。