SignalR 组未获取数据

2024-01-06

您好,我遇到一个问题,组中的 signalR 客户无法收到发送的信息。

我已经尝试过两种方法,但都不起作用。

在加载的网页上,客户端将调用服务器来获取组名称,然后调用集线器上的方法将用户加入该组。

JavaScript......

        var connectionOpen = false;
        var myHub;
        $(function () {
            myHub = $.connection.myHub;
            myHub.client.showMessage = alertMessage;
            $.connection.hub.start(function () {
                connectionOpen = true;
                joinGroup();
            });
        });

        function joinGroup() {
            $.ajax({
                url: 'Controller/GetGroupName,
                type: 'POST',
                success: function (group) {
                    if (connectionOpen == true)
                        tileHub.server.joinGroup(group);
                }
            });
        }

function alertMessage(string value){
alert(value);
}

控制器

[HttpPost]
public JsonResult GetGroupName()
{
    return Json("Foo");
}

myHub

public void JoinGroup(string groupName)
{
    Groups.Add(Context.ConnectionId, groupName);
}

我已经多次执行代码,我可以看到我连接正常并加入该组,但是当我尝试发送回该组时没有任何反应

我正在使用我的控制器发送到该组

GlobalHost.ConnectionManager.GetHubContext<myHub>().Clients.Group("Foo").showMessage("Hello");

这是我尝试过的第二种方法,我也尝试过从集线器发送到群组,但仍然没有乐趣。

任何帮助将不胜感激...

Updated感谢大卫·福勒(David Fowler),这个问题已经得到解决......

这是一个错误,因为我使用 HubName 属性为 Hub 指定了不同的名称,然后使用 longPolling 传输发送 signalR。删除该属性可以使其知道工作。还提供了修复程序,请参阅https://github.com/SignalR/SignalR/issues/1039 https://github.com/SignalR/SignalR/issues/1039


一些事情:

  1. 请务必阅读本文中的“重新加入群组”部分。http://weblogs.asp.net/davidfowler/archive/2012/11/11/microsoft-asp-net-signalr.aspx http://weblogs.asp.net/davidfowler/archive/2012/11/11/microsoft-asp-net-signalr.aspx.
  2. 您真的需要进行 ajax 调用来从服务器中找出组名称吗?直接在页面渲染不行吗?
  3. 如果您将“Foo”硬编码为到处的组名称,它会失败吗?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SignalR 组未获取数据 的相关文章

随机推荐

  • 我应该对 Asp.NET Web-api 路由使用 RouteParameter 还是 UrlParameter?

    我见过两者都被使用 所以我想知道 它们做相同的事情还是不同的事情 如果是后者 有什么区别呢 我尝试通过查看 Visual Studio MVC 4 rc Web api 模板来自己回答这个问题 但遗憾的是它同时使用了两者 所以我的困惑仍然存
  • React context - 'contextType' 未定义

    我在用 电子邮件受保护 cdn cgi l email protection and 电子邮件受保护 cdn cgi l email protection应该支持反应Context并尝试运行一个与以下相同的简单示例反应上下文 https r
  • 如何更改 Vob 所有者和 Vob 组?

    我尝试更改 vob 所有者和 vob 组 它会抛出如下错误 Error No ClearCase group found Error unknown protection styles 您可以查看技术说明 关于在 Windows 上更改 V
  • JSTL 标签如何在 JSF 2.1 中评估以下内容

    我有下面的 Test xhtml 我可以在其中选择 海 空 模式 我不想将所有 4 个页面 Page1 xhtml Page2 xhtml Page3 xhtml Page4 xhtml 加载到 jsf 视图树中 在我的场景中 模式一旦选择
  • Java UTC 毫秒

    试图在java中获取世界时间似乎是如此困难 C 中类似这样的东西 DateTime Now ToUniversalTime 似乎是那么困难的事情 我有代码从较早的日期 也是 utc 中减去当前的 utc 时间来查找时间差 但我似乎不知道如何
  • Rails 将请求参数中的空数组转换为 nils

    我的应用程序中有一个 Backbone 模型 它不是典型的平面对象 它是一个大型嵌套对象 我们将嵌套部分存储在 MySQL 数据库的 TEXT 列中 我想在 Rails API 中处理 JSON 编码 解码 以便从外部看起来您可以 POST
  • PyMongo:当 no_cursor_timeout=True 时光标会发生什么

    看着cursorMongoDB 的文档 我没有看到删除游标的方法 如果我将光标与no cursor timeout属性设置为 True 当我的脚本终止时 即使我还没有到达光标结果的末尾 光标是否也会被删除 Python 使用引用计数进行对象
  • 使用 openpyxl 取消合并 Excel 工作表中的每个单元格

    有没有办法使用 openpyxl 取消合并 Excel 工作表中的每个单元格 不能保证每个或任何单元格都被合并 但基本上我想取消合并单元格 如果它们存在于工作表中 您可以迭代工作表的merged cells属性并使用每一个作为参数unmer
  • 在节点heroku项目上安装gems

    我正在 heroku 上编写一个节点应用程序 该应用程序需要一个 gem compass http compass style org待安装 用于节点罗盘 https github com nathggns node compass 但是
  • 使用 MPI_Scatter 发送矩阵的列

    我正在尝试使用 MPI 编写矩阵向量乘法程序 我试图将矩阵的列发送到单独的进程并在本地计算结果 最后我做了一个MPI Reduce using MPI SUM手术 发送矩阵的行很容易 因为 C 按行优先顺序存储数组 但列则不然 如果您不一一
  • 如何在.Net core应用程序中发布环境特定的应用程序设置?

    我有 3 个特定环境appsettings我的 Net core 应用程序中的文件 in project json我已经设置了publishOptions像这样 根据建议here https stackoverflow com questi
  • 如何从 Node.js 应用程序制作 exe 文件?

    我有一个我编写的节点应用程序 运行如下 node exe app js inputArg 有什么方法可以将其单独打包成 exe 吗 所以我可以做这样的事情吗 App exe inputArg 我有一些方法可以通过使用批处理文件来伪造这个 所
  • 在 WordPress 中选择查询

    我试图在 2 小时内完成此任务 我在数据库中有自定义字段 我想通过元键或元值获取 post id 我正在这样做 post id wpdb gt get var SELECT post id FROM wpdb gt postmeta WHE
  • 如何在C#中使用SqlCommand和SqlDataReader返回Json结果

    我正在尝试使用 SQL 查询SqlCommand我想查看从 SQL Server 数据库返回的完整结果集 然后返回 Json 格式 这是控制器中的代码 public ActionResult GetAllSummary string con
  • C++ libneo4j_client 中的准备语句?

    The neo4j 运行 API https cleishm github io libneo4j client doc latest neo4j client 8h html ae975ef8a6ba72d3cc98dfcc7b96f4f
  • 无法读取未定义的属性“模块”

    我有一个基本的了解Django and JS最近我开始学习Angular js 我编写了显示硬编码的代码json using Angular并失败了 我收到以下错误 Uncaught TypeError Cannot read proper
  • 输出 C# 对象列表 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 这个问题是由拼写错误或无法再重现的问题引起的 虽然类似的问题可能是on topic help on topic在这里 这个问题的解决方式不
  • Dll注入。带参数执行CreateRemoteThread

    我写的dll注入程序运行得很好 它将 dll 加载到远程进程中并调用一些函数 现在我想将参数传递给该函数 CreateRemoteThread 有 lpParameter 来实现这一点 但是如何在 dll 中获取传递的参数以在函数中使用它
  • 数据库更改后如何刷新 ListView?

    我正在尝试在 Android 应用程序中管理一个简单的列表 列表的内容保存在 SQLite 数据库中 当用户选择并按住特定行时 会出现一个带有 删除 选项的上下文菜单 当他们选择 删除 时 该行将从数据库中删除 但视图不会刷新 当我退出应用
  • SignalR 组未获取数据

    您好 我遇到一个问题 组中的 signalR 客户无法收到发送的信息 我已经尝试过两种方法 但都不起作用 在加载的网页上 客户端将调用服务器来获取组名称 然后调用集线器上的方法将用户加入该组 JavaScript var connectio