1
1
using System ;
2
2
using System . Net . WebSockets ;
3
- using System . Text ;
4
- using System . Threading ;
5
- using System . Threading . Tasks ;
6
3
7
4
namespace NetCoreStack . WebSockets . Internal
8
5
{
@@ -16,50 +13,5 @@ public WebSocketTransport(WebSocket webSocket)
16
13
ConnectionId = Guid . NewGuid ( ) . ToString ( ) ;
17
14
WebSocket = webSocket ;
18
15
}
19
-
20
- public async Task Echo ( )
21
- {
22
- var buffer = new byte [ 1024 * 4 ] ;
23
- var result = await WebSocket . ReceiveAsync ( new ArraySegment < byte > ( buffer ) , CancellationToken . None ) ;
24
- while ( ! result . CloseStatus . HasValue )
25
- {
26
- string content = "<<binary>>" ;
27
- if ( result . MessageType == WebSocketMessageType . Text )
28
- {
29
- content = Encoding . UTF8 . GetString ( buffer , 0 , result . Count ) ;
30
- if ( content . Equals ( "ServerClose" ) )
31
- {
32
- await WebSocket . CloseAsync ( WebSocketCloseStatus . NormalClosure , "Closing from Server" , CancellationToken . None ) ;
33
- }
34
- else if ( content . Equals ( "ServerAbort" ) )
35
- {
36
- WebSocket . Abort ( ) ;
37
- }
38
- }
39
-
40
- result = await WebSocket . ReceiveAsync ( new ArraySegment < byte > ( buffer ) , CancellationToken . None ) ;
41
- LogFrame ( result , buffer ) ;
42
- }
43
- await WebSocket . CloseAsync ( result . CloseStatus . Value , result . CloseStatusDescription , CancellationToken . None ) ;
44
- }
45
-
46
- private void LogFrame ( WebSocketReceiveResult frame , byte [ ] buffer )
47
- {
48
- var close = frame . CloseStatus != null ;
49
- string message ;
50
- if ( close )
51
- {
52
- message = $ "Close: { frame . CloseStatus . Value } { frame . CloseStatusDescription } ";
53
- }
54
- else
55
- {
56
- string content = "<<binary>>" ;
57
- if ( frame . MessageType == WebSocketMessageType . Text )
58
- {
59
- content = Encoding . UTF8 . GetString ( buffer , 0 , frame . Count ) ;
60
- }
61
- message = $ "{ frame . MessageType } : Len={ frame . Count } , Fin={ frame . EndOfMessage } : { content } ";
62
- }
63
- }
64
16
}
65
17
}
0 commit comments