https://github.com/antelcat/websocket
.NET wrap for WebSocket
https://github.com/antelcat/websocket
websocket websocket-server wrapper
Last synced: 5 months ago
JSON representation
.NET wrap for WebSocket
- Host: GitHub
- URL: https://github.com/antelcat/websocket
- Owner: Antelcat
- License: mit
- Created: 2024-10-08T12:25:52.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-12-08T15:34:34.000Z (over 1 year ago)
- Last Synced: 2025-09-22T19:53:49.470Z (9 months ago)
- Topics: websocket, websocket-server, wrapper
- Language: C#
- Homepage:
- Size: 53.7 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# WebSocket
.NET wrap for WebSocket
# Example
in `Program.cs`
```csharp
var builder = WebApplication.CreateBuilder(args);
...
builder.Services.AddWebSockets();
...
var app = builder.Build();
...
// remember to call UseWebSockets() before MapWebSocket()
app.UseWebSockets();
app.MapWebSocket("/WebSocket");
...
```
for `SampleWebSocketClient`
which lifetime is `Transient` or `Scoped`, each WebSocket connection will create corresponding instance
```csharp
// define your client model to receive message from WebSocket client
public class SampleWebSocketClient : Antelcat.AspNetCore.Client
{
protected override async Task OnConnectedAsync()
{
Console.WriteLine($"{Context.ConnectionId} connected");
}
protected override async Task OnDisconnectedAsync(Exception? exception)
{
Console.WriteLine($"{Context.ConnectionId} disconnected due to {exception}");
}
protected override async Task OnReceivedTextAsync(string text, CancellationToken token)
{
await this.SendAsync(text, token);
}
}
```