【问题标题】:SignalR 2.3 cannot read property clientSignalR 2.3 无法读取属性客户端
【发布时间】:2018-07-09 08:13:52
【问题描述】:

早安,

很遗憾,我无法让 SignalR 为私人 1 对 1 聊天工作。

以下是我做过的事情:

以正确顺序位于我的布局页面的 head 标记中的引用:

<script src="~/Scripts/jquery-1.6.4.min.js"></script>
<script src="~/Scripts/jquery.signalR-2.3.0.js"></script>

甚至在下面添加了两者以检查是否有效但没有运气。

<script src="/signalr/hubs"></script>
<script src="http://localhost:50581/signalr/hubs"></script>

有一个 Owin 启动类:

[assembly: OwinStartup(typeof(Startup))]

namespace WebApplication6
{
    public class Startup
    {
        public void Configuration(IAppBuilder app)
        {

            var config = new HubConfiguration();

            config.EnableDetailedErrors = true;
            config.EnableJavaScriptProxies = true;

            app.MapSignalR("/signalr", config);
        }
    }
}

让我的 chatHub 类包含我的方法:

[HubName("chatHub")]
    public class ChatHub : Hub
    {
    }

我有一个名为 chatboxManager 的 javascript 文件,其中包含以下内容:

var connection = $.hubConnection();
var ChatHub = connection.createHubProxy('chatHub');

使用上面的方法,我可以连接到 chatHub

但它无法识别 .client 波纹管:

// On New User Connected
debugger;
ChatHub.client.onNewUserConnected = function (id, name, userid) {
    AddUser(ChatHub, id, name, userid);
}

如果我在 js 文件的开头使用它,则不起作用:

var ChatHub = $.connection.chatHub;

还有什么我可能会遗漏的吗?

我已经卸载了这些软件包并重新安装了它们。

任何建议都将不胜感激。

诚挚的问候和感谢

【问题讨论】:

    标签: javascript c# html signalr


    【解决方案1】:

    我不知道这是否可能是解决方案,但请尝试一下

    var hubConnection = new HubConnection("http://yourIpHere:yourPortNr/signalr");
    var chatHubProxy = hubConnection.CreateHubProxy("chatHub");
    

    【讨论】:

    • 嗨,@KakaMir 我会在解决方案启动并再次运行后尝试一下。谢谢你的建议。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-22
    • 1970-01-01
    • 1970-01-01
    • 2019-10-22
    • 2021-04-12
    相关资源
    最近更新 更多