【发布时间】:2019-11-18 11:14:14
【问题描述】:
我将首先从我所知道的开始,因为它可能对其余部分有用。
很明显,您可以使用协议子集来实例化 SockJS:
sockJsProtocols = ["xhr-streaming", "xhr-polling", ....];
socket.cliente = new SockJS(url, null, {transports: sockJsProtocols}));
我还发现,当 SockJS 调用 /info 端点时,服务器返回 websockets true 或 false(取决于服务器兼容性)。
我也知道漂亮的表 here 有 3 列:websockets、流和轮询。
但我有两个问题:
1) SockJS 如何决定轮询、流式传输或 websockets?它不能与浏览器兼容性有关,因为我在我们的日志中看到了许多与最近浏览器的 XHRStreaming 会话。这怎么没有记录在任何地方?
2) 为什么 SockJS 每次都需要调用 /info?服务器的兼容性将始终相同。
【问题讨论】:
标签: websocket spring-websocket sockjs