/
aprogrammer
/
dotnet-docs
Обзор
Документация
Войти
/
aprogrammer
/
dotnet-docs
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
docs/fundamentals/networking/snippets/socket/socket-server/Program.cs
45 строк
1 KB
David Pine
Use a consistent name for the variable (#31197)
15 сен 2022, 22:26
Не верифицирован
15 сен 2022, 22:26
580ab00
Код
Авторство
О чём код?
// Socket server example Console.OutputEncoding = Encoding.UTF8; Console.WriteLine("Socket server starting..."); var ipEndPoint = await NetworkDiscovery.GetSocketEndPointAsync(); // <socketserver> using Socket listener = new( ipEndPoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp); listener.Bind(ipEndPoint); listener.Listen(100); var handler = await listener.AcceptAsync(); while (true) { // Receive message. var buffer = new byte[1_024]; var received = await handler.ReceiveAsync(buffer, SocketFlags.None); var response = Encoding.UTF8.GetString(buffer, 0, received); var eom = "<|EOM|>"; if (response.IndexOf(eom) > -1 /* is end of message */) { Console.WriteLine( $"Socket server received message: \"{response.Replace(eom, "")}\""); var ackMessage = "<|ACK|>"; var echoBytes = Encoding.UTF8.GetBytes(ackMessage); await handler.SendAsync(echoBytes, 0); Console.WriteLine( $"Socket server sent acknowledgment: \"{ackMessage}\""); break; } // Sample output: // Socket server received message: "Hi friends 👋!" // Socket server sent acknowledgment: "<|ACK|>" } // </socketserver> Console.WriteLine("Press ENTER to continue..."); Console.Read();