我正在尝试使用 signalR 集线器实现推送通知。我有一个示例代码,当我运行它时,我收到一条错误消息说 JavaScript 运行时错误:'Rx' is undefined
此错误出现在动态信号器/集线器文件中。我已经添加了所有必要的 Javascript 参考,即 jquery、signalR 和 signalr/hubs。
我错过了什么?
我的代码看起来像这样:
Global.asax 文件有这个
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
RouteTable.Routes.MapHubs("~/signalr");
}
我的 Hub 是这样定义的
[HubName("HealthCheck")]
public class MyConnectionClass : Hub
{
public static List<string> messages = new List<string>();
public void GetServiceState()
{
Clients.updateMessages(messages);
}
public void UpdateServiceState()
{
messages.Add(DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss"));
Clients.updateMessages(messages);
}
我的客户在 javascript 中是这样的
$(function () {
// creates a proxy to the health check hub
var healthCheckHub = $.connection.healthCheck;
// handles the callback sent from the server
healthCheckHub.updateMessages = function (data) {
$("li").remove();
$.each(data, function () {
$('#messages').append('<li>' + this + '</li>');
});
};
$("#trigger").click(function () {
healthCheckHub.server.updateServiceState();
});
// Start the connection and request current state
$.connection.hub.start(function () {
healthCheckHub.server.getServiceState();
});
});
我还在客户端中添加了所有必要的 js 引用。我从这里挑选了这个样本 这够了吗还是我错过了什么?
谢谢