【发布时间】:2014-02-12 04:36:56
【问题描述】:
如文档 SignalR 中所述,以下传输机制:
- WebSocketsl;
- 服务器发送事件;
- 永远框架;
- 长轮询
它会自动降级到客户端支持的最佳选项。
我的问题是:
SignalR javascript 客户端(经测试可在 PC 上的所有现代浏览器中运行)无法在移动设备上运行,除非我通过以下方式明确指定使用 LongPolling 作为传输:
$.connection.hub.start({ transport: 'longPolling' });
第二个问题是,即使我指定了 LongPolling 选项,它仍然无法在原生 Android 浏览器中运行。
有没有人遇到或解决过这些问题?
【问题讨论】:
-
原生 Android 浏览器在 Websockets 和 SSE 方面出现问题。长轮询是您最好的选择,它通常可以正常工作。你试过不同的设备吗?您是否尝试过在同一台设备上安装 Chrome?你能添加你的客户跟踪吗?只需重写函数 connection.log 即可在网页上显示输出
标签: android ios websocket signalr signalr-hub