c# - 无法从 JavaScript 客户端连接到 ASP.NET SignalR 集线器
问题描述
我需要从 JavaScript 连接到 ASP.NET SignalR 集线器。我正在使用@aspnet/signalr npm 包,使用以下代码进行连接。
connection = new signalR.HubConnectionBuilder()
.withUrl("<link to hub>", { accessTokenFactory: () => token })
.build();
connection.start()
相同的代码可以连接到 ASP.NET Core SignalR 集线器,但对于 ASP.NET SignalR 集线器,它会返回以下错误:TypeError: Cannot read property 'length' of undefined at "HttpConnection"
这是不兼容版本的问题吗?可以使用 @aspnet/signalr 包连接到 ASP.NET SignalR 集线器吗?
解决方案
简短的回答,不,您不能使用/混合客户端/服务器包。ASP.NET Core SignalR 与 ASP.NET SignalR 的客户端或服务器不兼容。
在此处查看我较旧的帖子/接受的答案 - https://stackoverflow.com/a/49153217/6263514
但对于较新的参考文档 - https://docs.microsoft.com/en-us/aspnet/core/signalr/version-differences?view=aspnetcore-5.0
推荐阅读
- pandas - 如何在熊猫中输出“名称”值?
- elasticsearch - 如何通过 PySpark 将带有结构列的数据框写入 Elasticsearch
- jquery - 嗨,当我从第 11 行循环遍历 Datatable 分页表时,我在 Jquery 中遇到问题,它没有循环
- java - 如果我直接添加答案,为什么我的列表功能在这个问题中不起作用,但如果我创建列表的副本则起作用
- node.js - 如何在 mongodb 中获取图形的条件平均数据?
- reactjs - React 创建一个水平分隔线,中间有文本
- highcharts - HighCharts:X轴上的注释?
- python - 用切片查找 np 数组的最大列值
- math - 2的平方根的X个十进制数字需要多少个二进制数字
- javascript - 尝试编写节点 index.js,但出现错误