我想写一个Android应用程序,我想知道在我这样做之前,SignalR是否使用websocket或其他东西在服务器和客户端之间进行通信。
有人知道吗?
答案 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,如任何网络服务器上的原生推送通知