gpt4 book ai didi

javascript - 如何在桌面上调试 WebSocket/服务器发送事件重新连接?

转载 作者:行者123 更新时间:2023-12-05 00:29:49 25 4
gpt4 key购买 nike

我正在开发一个使用服务器发送事件(SSE - 基本上是单向 websockets)的应用程序。如果用户在其移动 chrome 浏览器上使用该站点,然后在大约一分钟内退出,则 SSE 连接会中断。如果用户随后返回站点,它不会刷新页面(这很好)。但是我仍然需要重新建立 SSE 连接,以便服务器可以在不刷新的情况下继续向它们发送消息。
我正在尝试调试我的实现,但必须在移动设备上进行调试非常乏味。我必须拿起我的手机,刷新页面,然后退出,等待 1 分钟(这样连接可能会中断),然后重新进入,以确定我用于重新建立连接的代码是否正常工作。
我宁愿能够在桌面上调试它,但我还没有找到办法。我尝试了以下方法:

  • 尝试了 5 种不同的 Chrome 扩展来休眠标签。不幸的是,当您导航回选项卡时,它只是刷新页面而不是恢复它。
  • 尝试使用 USB 调试,但即使您在移动设备上使用标签,桌面也会始终保持标签打开,因此标签永远不会休眠。
  • 尝试运行 debugger;在 Chrome 开发人员工具控制台中,但即使我让 Javascript 静置执行卡住 5 分钟以上,它也不会中断 SSE 连接,因此我无法测试重新连接是否有效。
  • 尝试使用扩展程序杀死 Chrome 的互联网,但奇迹般地,这仍然保持事件的 websocket/SSE 连接。显然谷歌工程师有 deprioritized这个努力?

  • 基本上,我希望模拟当您退出 Web 浏览器时在移动设备上发生的行为,等待一分钟,然后重新进入(Javascript 执行被卡住,SSE 连接在一分钟左右后断开,并且然后返回 Javascript 并尝试重新连接 SSE 连接)。
    这可能吗?

    最佳答案

    我认为最好的改变是模拟你的安卓设备。您可以通过从 https://developer.android.com/studio 安装 android studio 来实现。然后在这里您拥有启动和管理虚拟 android env https://developer.android.com/studio/run/managing-avds 所需的一切
    这就是我调试整个移动开发的方式

    关于javascript - 如何在桌面上调试 WebSocket/服务器发送事件重新连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62782448/

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