Signalr ';客户';在信号器中为null或不是对象

Signalr ';客户';在信号器中为null或不是对象,signalr,Signalr,我正在本地主机上使用VS 2010(4.0框架)和SignalR版本1.1.3成功运行SignalR应用程序,如下链接所示: 但当我在IIS服务器上部署此Web应用程序时: 它抛出Javascript错误作为 “客户端”为空或不是对象 我应该检查什么 TIA您是否有对客户端库和~/signar/hubs的脚本引用?这是由于未正确包含动态signar hubs文件造成的。在您参考的示例中,他们正在做: <script src="/signalr/hubs"></script&g

我正在本地主机上使用VS 2010(4.0框架)和SignalR版本1.1.3成功运行SignalR应用程序,如下链接所示:

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

它抛出Javascript错误作为

“客户端”为空或不是对象

我应该检查什么


TIA

您是否有对客户端库和
~/signar/hubs
的脚本引用?

这是由于未正确包含动态signar hubs文件造成的。在您参考的示例中,他们正在做:

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

这在当地非常好。但是,如果要将该应用程序部署到IIS,如果您是服务器,则需要确保应用程序在根目录下运行

我猜,当您部署到IIS时,您是从localhost/mysignalrapp/YOUR_之类的端点托管它。如果是这种情况,/signal/hubs包含将不起作用

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

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


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

您应该再次检查框架版本。Asp.Net明确指出:“Signaler 2.0仅在.Net Famework 4.5上受支持。”嘿,但当我在我的计算机上运行它时,它工作良好…是的!出于某种原因,我也安装了JSOn2包。客户端库是指JQuery文件和SignalR js文件?应用程序相对路径(~/)不适用于普通的html文件。Scripts.Render(“~/SignalR/hubs”)可以正常工作!!谢谢!这个解决方案很简单,需要一些思考,但却被弄糊涂了!它在我的本地主机上也运行良好…:)