当然有!下面是一个简单的C#客户端WebSocket示例,它连接到WebSocket服务器并发送/接收消息。
首先,确保已安装System.Net.WebSockets
NuGet包。如果没有,请在项目中运行以下命令:
Install-Package System.Net.WebSockets
然后,创建一个名为WebSocketClient.cs
的文件,并将以下代码粘贴到其中:
using System;
using System.Net.WebSockets;
using System.Threading.Tasks;
using System.Text;
namespace WebSocketClient
{
class Program
{
static async Task Main(string[] args)
{
// WebSocket服务器地址
string uri = "ws://your_websocket_server_address";
// 创建WebSocket连接
using (ClientWebSocket webSocket = new ClientWebSocket())
{
// 连接到WebSocket服务器
await webSocket.ConnectAsync(new Uri(uri), CancellationToken.None);
// 发送消息到服务器
string message = "Hello, WebSocket Server!";
byte[] messageBytes = Encoding.UTF8.GetBytes(message);
await webSocket.SendAsync(new ArraySegment(messageBytes), WebSocketMessageType.Text, true, CancellationToken.None);
// 接收来自服务器的消息
byte[] buffer = new byte[1024 * 4];
WebSocketReceiveResult result;
do
{
result = await webSocket.ReceiveAsync(new ArraySegment(buffer), CancellationToken.None);
string receivedMessage = Encoding.UTF8.GetString(buffer, 0, result.Count);
Console.WriteLine($"Received message: {receivedMessage}");
} while (!result.CloseStatus.HasValue);
}
}
}
}
请注意,您需要将your_websocket_server_address
替换为您的WebSocket服务器地址。
编译并运行此程序,它将连接到WebSocket服务器,发送一条消息,然后接收并打印服务器的响应。