小编Ion*_*bia的帖子

Xamarin Mono ClientWebSocket实现不适用于安全套接字

我在Osx上实现安全的Web套接字客户端时遇到问题.我正在使用System.Net.WebSockets中的ClientWebSocket.这是一些测试代码:

    static async Task RunLoop()
    {
        ClientWebSocket ws = new ClientWebSocket();
        await ws.ConnectAsync(new Uri("wss://echo.websocket.org"), CancellationToken.None);

        do
        {
            Console.Write("Enter message:");
            var msg = Console.ReadLine();
            if (msg == "quit")
            {
                break;
            }

            var b = new ArraySegment<byte>(UTF8Encoding.UTF8.GetBytes(msg));
            await ws.SendAsync(b, WebSocketMessageType.Text, true, CancellationToken.None);

            byte[] bb = new byte[2048];
            ArraySegment<byte> buffer = new ArraySegment<byte>(bb);

            var result = await ws.ReceiveAsync(buffer, CancellationToken.None);

            switch (result.MessageType)
            {
                case WebSocketMessageType.Text:
                    Console.WriteLine(UTF8Encoding.UTF8.GetString(buffer.Array));
                    break;
                case WebSocketMessageType.Close:
                    await ws.CloseAsync(WebSocketCloseStatus.NormalClosure, "", CancellationToken.None);
                    break;
            }

        } while (true);
    }

    static void Main(string[] args)
    { …
Run Code Online (Sandbox Code Playgroud)

c# sockets mono xamarin

6
推荐指数
1
解决办法
761
查看次数

标签 统计

c# ×1

mono ×1

sockets ×1

xamarin ×1