asp.net core mvc网站启动后chrome不能收到websocket信息

1.环境为asp.net core mvc,后台每秒推消息到视图页面
2.网站启动后chrome不能收到websocket信息,刷新后或者点击网站的的一个菜单后均可以
3.Chrome浏览器没有此问题
4.用工具刷新前后都能收到消息
5.以上问题,有的电脑可以,有的会重现,不知是不是浏览器哪里设置有问题?

引用 皆我百晓生 小程序回复内容作答:
可能的原因是浏览器在初始连接时可能无法立即接收到WebSocket消息。这可能是由于网络延迟或浏览器的缓存机制导致的。来自服务器的延迟响应可能导致页面无法立即接收到消息。

您可以尝试通过以下方式来解决这个问题:

  1. 在WebSocket连接建立之后,通过WebSocket发送一个初始的心跳消息,以触发Chrome浏览器接收到WebSocket消息。

  2. 在服务器端发送WebSocket消息之前,使用Thread.Sleep()方法在一段时间后等待一会,以确保消息在连接建立后立即发送。

  3. 启用WebSocket的ping/pong功能,以检测网络连接是否正常,如果连接断开,则重新建立连接。

请注意,由于这个问题只在某些电脑上复现,可能的解决方法可能会因操作系统或浏览器版本的不同而有所不同。您可以根据您的具体情况来尝试这些解决方法,并查看是否可以解决问题。