gpt4 book ai didi

websocket - Visual Studio 浏览器链接功能是否能够使用 websockets?

转载 作者:行者123 更新时间:2023-12-04 02:12:28 25 4
gpt4 key购买 nike

我了解 SignalR 用于使用注入(inject)的动脉脚本与客户端浏览器进行通信。我有一个似乎很常见的问题,即我的浏览器的网络日志中充满了如下所示的条目:

.../arterySignalR/poll?transport=longPolling&connectionToken=...



这告诉我 SignalR 已经退回到长轮询而不是使用 Web 套接字。假设我们有一个支持 Web 套接字的浏览器,并且该浏览器在 localhost 上运行,那么 SignalR 不应该默认使用 Web 套接字吗?什么可能导致它退回到长轮询?

最佳答案

简答

浏览器链接将仅在 Windows 8 或 Windows Server 2012 上使用 WebSockets

更长的答案

如果您在 Windows 7、Windows Vista 或 Windows Server 2008 上使用 Visual Studio,下面将解释该问题:

IIS (Express) 依赖于 System.Net.WebSockets 中的 .NET 框架实现。处理 WebSocket 连接;正如您在 MSDN 的链接中所读到的那样,当您在 Windows 7 上安装 .NET 4.5 时,您根本无法获得必要类的实际实现。

因此,在这种情况下,服务器无法同意客户端从标准 HTTP 更改为 WebSocket 协议(protocol)的请求,这会迫使 SignalR 客户端使用一种后备选项(在您的情况下:长轮询)。

关于websocket - Visual Studio 浏览器链接功能是否能够使用 websockets?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21553366/

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