使用jQuery.SignalR js时 插件会自动判断浏览器与服务器支持的传输方式,但有可能出现其他情况导致默认选择的协议不支持,这时就需要手动指定所需要的传输方式了。
要让客户端按照特定的方式和顺序进行数据传输可以使用 $.connection.start({transport:['webSockets','foreverFrame']}) 或 $.connection.hub.start({ transport: ['webSockets', 'foreverFrame'] }) 来指定,当客户端和服务端不支持指定的方式时会按照默认规则来匹配传输方式。
传输方式 | 选择条件 |
auto | 默认配置,根据不同的情况自动选择下面4种模式种的一种 |
webSockets |
完全符合下面条件时选用
|
serverSentEvents | 客户端或服务端不支持WebSocket |
foreverFrame | EventSource不可用时(除IE外基本都支持) |
longPolling |
|