SignalR将在支持Websocket的Android应用程序和IIS服务器之间使用哪种传输?

时间:2016-06-12 08:12:56

标签: android asp.net-mvc xamarin signalr

我想写一个Android应用程序,我想知道在我这样做之前,SignalR是否使用websocket或其他东西在服务器和客户端之间进行通信。

有人知道吗?

2 个答案:

答案 0 :(得分:2)

默认情况下,SignalR将尝试使用Web套接字,如果它们在底层平台中不可用,它将回退到SSE,然后再回到长轮询。

Xamarin / Mono当前实现有some issues with web sockets,即使SignalR支持它,因此Web套接字将不可用。

如果您的应用程序是使用Xamarin制作的(当您标记您的问题时),您将获得的最佳协议是SSE(服务器发送事件)。但根据我的经验(我有一个使用它的应用程序),这个协议对于大多数用例来说足够快速和稳定。

答案 1 :(得分:1)

来自signalR网页

  

SignalR在可用的情况下使用新的WebSocket传输   必要时回到旧运输工具。

来自Xamarin论坛和youtube,似乎人们已成功实施了带有watch

的websocket传输

我还可以使用其他什么?

用于HTML5应用程序的Socket.IO(使用NodeIIS),GCM或Firebase,如任何网络服务器上的原生推送通知