gpt4 book ai didi

asp.net-mvc - 导航到项目中的另一个页面时,不会立即调用 Ondisconnect(而是导航到另一个网站或关闭选项卡时)

转载 作者:行者123 更新时间:2023-12-04 04:33:55 27 4
gpt4 key购买 nike

在我们将项目升级到 SignalR v2 后,ondisconnect 的行为似乎发生了变化。
当导航到另一个网站时,例如google.com,ondisconnect 立即被调用(关闭其运行的选项卡时也是如此)。但是当我们导航到我们的 web 项目中的另一个页面时, ondisconnect 被调用很晚,据说是在超时用完之后。我们通过创建一个新的 MVC4 项目和 chatHub 示例来验证这种行为,以代表我们排除用户错误(用谷歌浏览器测试)。
我们的应用程序严重依赖于用户离开页面时触发的 ondisconnect(用于用户清理,即离开聊天室)。

您能否告诉我这是否是设计使然,以及当用户导航到另一个页面(与关闭选项卡相同)时,我们必须立即启用断开连接的哪些选项?我们没有更改默认的超时/保持连接设置。添加了我们希望不必依赖像 beforeunload 这样的方法来使这项工作像以前一样。

非常感谢!

最佳答案

我已将此发布到 github 上的 SignalR 团队,Halter73 以临时解决方法作为回应。请查看 https://github.com/SignalR/SignalR/issues/2719了解更多详情。

添加:

 window.onbeforeunload = function (e) {
$.connection.myHub.connection.stop();
};

我们的项目已经解决了这个问题。

关于asp.net-mvc - 导航到项目中的另一个页面时,不会立即调用 Ondisconnect(而是导航到另一个网站或关闭选项卡时),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20094251/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com