【发布时间】:2014-02-28 03:45:14
【问题描述】:
在带有 Safari 浏览器的 iPad 中,SignalR 支持哪些类型的传输。 iPad Safari 中的回退机制是什么
【问题讨论】:
在带有 Safari 浏览器的 iPad 中,SignalR 支持哪些类型的传输。 iPad Safari 中的回退机制是什么
【问题讨论】:
根据Transports and fallbacks section of this page,SignalR 首先尝试使用 WebSockets 和服务器发送事件。然后它会回退到 Frame 或 Long Polling 作为最后一个选项。
iPad 上的 Safari 支持 WebSockets。但需要注意的是,iOS Safari 实现了不同的标准:HyBi-00/Hixie-76(不是 RFC 6455)。服务器发送事件也可以工作,但前提是页面在屏幕上处于活动状态。
我不确定 iPad (iOS 5/6) 上的旧版 Safari 是否会退回到其他传输方式 - 但您可以使用 http://websocketstest.com 进行测试。
【讨论】:
根据caniuse iOS Safari 支持 websockets。但是,它似乎有一些reported issues,因此最好强制它使用长轮询或其他方式。
检查行为的最佳方法是在 iOS 设备上启用 Safari 调试,并使用 Mac 连接到它以监控浏览器中的网络流量。
【讨论】: