小编Tes*_*ter的帖子

ClientWebSocket 示例挂起

下页所示的示例不起作用: Using c# ClientWebSocket with Streams

它挂在以下行上:

等待 ws.ConnectAsync(serverUri, CancellationToken.None);

看来连接尚未建立。

请指出使以下代码工作的最简单的修改。我不想使用任何第三方工具或库。

private static async Task DoClientWebSocket()
{
    using (ClientWebSocket ws = new ClientWebSocket())
    {
        Uri serverUri = new Uri("wss://echo.websocket.org/");
        await ws.ConnectAsync(serverUri, CancellationToken.None);
        while (ws.State == WebSocketState.Open)
        {
            string msg = "hello123";
            ArraySegment<byte> bytesToSend = new ArraySegment<byte>(Encoding.UTF8.GetBytes(msg));
            await ws.SendAsync(bytesToSend, WebSocketMessageType.Text, true, CancellationToken.None);
            ArraySegment<byte> bytesReceived = new ArraySegment<byte>(new byte[1024]);
            WebSocketReceiveResult result = await ws.ReceiveAsync(bytesReceived, CancellationToken.None);
            Console.WriteLine(Encoding.UTF8.GetString(bytesReceived.Array, 0, result.Count));
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

c# clientwebsocket

0
推荐指数
1
解决办法
1万
查看次数

标签 统计

c# ×1

clientwebsocket ×1