Xsrin通过Websockets SignalR发送消息

时间:2017-01-19 16:44:20

标签: xamarin websocket signalr

Xamarin的SignalR无法通过Websockets工作。

我有一个Web服务,SygnalR通过websockets发送消息。

我是否可以在Xamarin中收到消息而不将SignalR用于Xamarin?

在Xamarin客户端使用SignalR很重要吗?

2 个答案:

答案 0 :(得分:1)

如果您在服务器中实现了SignalR集线器,则可以在Xamarin中使用SignalR Client nuget。传输将默认为SSE(服务器发送事件),但它运行良好。

在客户端实现websocket只是为了连接到SignalR服务器毫无意义,除非你真的需要使用WebSockets而不是SSE。

答案 1 :(得分:1)

SignalR使用传输连接到服务器。 SignalR客户端的可移植版本不支持webSockets传输,因为没有可用的WebSocket客户端的可移植版本。这很好,因为还有两个传输--longPolling和serverSentEvents可用于与服务器通信。

您无法使用裸webSockets连接到SignalR 2.x服务器。需要遵循protocol,如果客户未遵循此protocol,其请求将被拒绝。 如果您绝对需要使用websockets,则可以通过实现IClientTransport接口实现自己的websockets传输,并将其传递给Start方法。这就是UWP支持webSockets传输的方式。 Here是我需要编写的所有代码。