我正在努力让信号员代理工作。我在一个项目中有一个集线器,需要从另一个项目中调用它的动作:
在我没有集线器的项目中的javascript中我有这个:
var hubConnection = $.hubConnection("/signalr", { useDefaultPath: false });
var chat = hubConnection.createHubProxy('ticketHub');
<script src="Scripts/jquery.signalR-2.0.0.js"></script>
<script src="http://local.serving/TouchScreen/signalr/hubs"></script>
当我跑步时,我得到:
未捕获的TypeError:无法设置未定义的属性'addNewMessageToPage'
我的TouchScreen项目有一个名为TicketHub的集线器,其中包含以下内容:
public class TicketHub : Hub
{
public void Send(string name, string message)
{
Clients.All.addNewMessageToPage(name, message);
}
}
两个项目都有startup.cs文件,并且都没有显示任何进一步的错误。
当我查看网络流量时,我看到此文件返回200 ok:
<script src="http://local.serving/TouchScreen/signalr/hubs"></script>
我的代理设置在这里是错的,因为我觉得这一切似乎都在我看来。
非常感谢
答案 0 :(得分:0)
尝试连接到local.serving / signalr / hubs以确保未在根目录中创建集线器。