浏览器多个选项卡中的不同连接

2024-05-05

为什么 SignalR 在浏览器的多个选项卡中为同一登录用户建立不同的连接。 有没有一种方法可以为同一浏览器中打开的所有选项卡建立一个连接。 我所说的连接是指 SignalR 中用户的连接 ID。


因为同一浏览器的不同选项卡是不同的文档\“进程” - 每个选项卡在某种意义上代表客户端应用程序的不同“实例”。无法在它们之间直接共享 JavaScript 对象(这就是 SignalR 在每个选项卡中打开新连接的原因)。要在不同实例之间共享数据\通信,您可以使用例如 HTML5 localStorage 机制

因此,如果您想在选项卡之间共享一个 SignalR 连接,可行的方法是通过仅在一个选项卡中管理连接并允许选项卡之间的通信 https://stackoverflow.com/questions/2236828/javascript-communication-between-tabs-windows-with-same-origin/12514384#12514384以便每个选项卡都能够从服务器发送\接收消息。您可以使用或从中获得灵感这个很酷的项目 https://github.com/slimjack/IWC-SignalR正是这样做的。

这也解决了problem https://github.com/SignalR/SignalR/issues/849浏览器对单个服务器的最大并发连接数的限制。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

浏览器多个选项卡中的不同连接 的相关文章

随机推荐

  • DDD 聚合和值对象

    我想问一下关于DDD功能的问题 假设我们有两个聚合 每个聚合都包含值对象地址 根据 Eric Evans DDD 我们应该将聚合彼此隔离 因此第一个聚合的聚合根不能有指向 Address 的链接 坦白说 这对我来说似乎没有意义 所以问题是如
  • 在 Android 的 Exoplayer 中使用 flac 扩展

    我正在尝试使用 ExoPlayer 库FLAC 扩展 https github com google ExoPlayer tree release v2 extensions flac在我的安卓应用程序中 我面临以下问题 并非所有文件都可以
  • 将pillow Image对象转换为JpegImageFile对象

    我裁剪了一张 jpeg 图像 但裁剪后的图像类型是
  • 在保存对话框wxpython中实现“另存为”

    我有一个保存例程 应通过以下方式提示用户 如果当前选择的文件名存在 则提示覆盖 如果当前选择的文件名为空 即 则设置一个对话框要求用户插入文件名 如果当前选择的文件名不存在 则保存 我的代码目前如下所示 但我觉得应该有更好的方法来做到这一点
  • TRESTRequest:是否可以在 POST 请求中使用自定义媒体类型?

    例如 我们有一个 API 需要我们自己的供应商特定内容类型application vnd xxxx custom custom data json但查看 REST Client 的源代码 它似乎总是默认为 REST Types 中的 Con
  • 如何使 TypeScript 输出有效的 ES6 模块导入语句?

    所有主流浏览器 http caniuse com feat es6 module支持 ES6 模块已有一段时间了 这些方法与许多服务器端方法的不同之处在于 它们需要指定要从中导入的确切文件 它们无法使用文件发现 这是有道理的 在 Node
  • 从 React Native 中的数组映射函数动态渲染内容

    我正在尝试从数组中获取数据并使用映射函数来呈现内容 看着 this lapsList 以及相关的 lapsList 函数来理解我想要做什么 结果是没有显示任何内容 视图下的视图等 这是我的简化代码 class StopWatch exten
  • 如何检查函数参数的类型?

    我有一个正在构建功能的应用程序 marshal and apply 它调用一些其他函数 或函子 f有一些论据 marshal and apply的工作是根据参数的类型对参数应用一些特殊的编组f的参数 如果其中之一f的参数是特殊类型 mars
  • 动态调整文本区域大小以适应内容

    这是我使用 netbeans 放入程序中的文本区域 第一张图片显示了我运行程序时文本区域的样子 第二张图片显示了我按下按钮后的文本区域 该按钮将大约 50 个 Hello world 字符串添加到文本区域 仅显示前 6 个 我需要动态增加文
  • 为什么位图图像在 Retina 显示屏上看起来很模糊?

    我没有视网膜设备 但我在网上看到了这个讨论 我读过有关为具有 Retina 显示屏的设备提供 2 倍图像尺寸的解决方案 以确保位图不会变得模糊 但是 我不明白这是如何工作的 首先 正如我所读到的 我假设视网膜显示器的像素密度是四倍 二的平方
  • 如何从 SQLAlchemy 引擎实例获取连接 URL?

    我通过生成一个程序来开始一个程序URL http docs sqlalchemy org en rel 1 0 core engines html highlight url sqlalchemy engine url URL对象并将其传递
  • NoMethodError:未定义的方法“调用”

    运行以下测试套件时 require spec helper describe User do before user User name Example User email email protected cdn cgi l email
  • 有没有办法一次重新编码多个变量?

    我有一个学生成绩单分数的数据集 范围从 D 到 A 我想将它们重新编码为 1 12 的范围 即 D 1 D 2 A 11 A 12 现在我正在起诉revalue函数于plyr 我有几列想要重新编码 有没有比运行更短的方法来做到这一点reva
  • 如何允许用户对列表中的项目重新排序?

    我有一个 Android 应用程序 用户可以在其中将项目添加到列表中 并且我希望他们能够按照自己的意愿对列表中的项目进行重新排序 而不是仅仅向他们提供不同的排序顺序 为项目添加位置设置 它们来自数据库 很容易 但是用户可以使用哪种 UI 元
  • 如何制作全屏java小程序?

    我正在用 Java 小程序设计一个心理学实验 我必须让我的 java 小程序全屏显示 执行此操作的最佳方法是什么以及我该如何执行此操作 由于我已经 3 年没有使用 java applet 我上次使用它是为了课程作业 我已经忘记了大部分概念
  • 如何在android sdk中从图库中获取图像并将其显示到屏幕上

    我想知道如何从图库中获取预先保存的图像 然后将其显示到屏幕上 任何教程 有用的链接和信息将不胜感激 如果您希望我进一步解释任何内容 请询问 Intent photoPickerIntent new Intent Intent ACTION
  • 使用 @abstractproperty 和 @abstractmethod 实现/覆盖的实际差异

    考虑一个抽象基类 它具有您希望每个后续子类重写的函数 使用 abc 模块和 ABCMeta 装饰有 abstractproperty or abstractmethod实际上强制子类 开发人员实现创建装饰器指定的函数类型 根据我的实验 您可
  • opencv如何使用compareHist函数

    img cv2 imread mandrill png histg cv2 calcHist img 0 None 256 0 256 if len sys argv lt 2 print gt gt sys stderr Usage sy
  • 为什么百分比边距会导致换行?

    div style background color dd3fb8 a style margin left 10 a a a b a a c a div 在上面的示例中 字母 c 将在新行上 但如果我将 margin left 设置为px单
  • 浏览器多个选项卡中的不同连接

    为什么 SignalR 在浏览器的多个选项卡中为同一登录用户建立不同的连接 有没有一种方法可以为同一浏览器中打开的所有选项卡建立一个连接 我所说的连接是指 SignalR 中用户的连接 ID 因为同一浏览器的不同选项卡是不同的文档 进程 每