當然有!下面是一個簡單的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<byte>(messageBytes), WebSocketMessageType.Text, true, CancellationToken.None);
// 接收來自服務器的消息
byte[] buffer = new byte[1024 * 4];
WebSocketReceiveResult result;
do
{
result = await webSocket.ReceiveAsync(new ArraySegment<byte>(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服務器,發送一條消息,然后接收并打印服務器的響應。