Отправка UDP-пакета в C#
Отправка датаграммы кладет буфер байтов в сеть по адресу получателя.
Адрес "127.0.0.1" и порт 18081
передают аргументами в SendAsync.
Вызов кладет буфер в сеть. Если на порту
никто не слушает, отправка все равно
завершится без ошибки - прием в этом уроке
не используем.
Создадим UdpClient и отправим слово
"ping" на 127.0.0.1:
using System.Net.Sockets;
using System.Text;
using UdpClient sender = new();
byte[] payload = Encoding.UTF8.GetBytes("ping");
await sender.SendAsync(payload, payload.Length, "127.0.0.1", 18081);
Console.WriteLine(payload.Length);
Другой текст кладут в тот же каркас - меняют только литерал перед отправкой. Выведем длину второго сообщения в байтах:
using System.Net.Sockets;
using System.Text;
using UdpClient sender = new();
byte[] payload = Encoding.UTF8.GetBytes("order 42");
await sender.SendAsync(payload, payload.Length, "127.0.0.1", 18081);
Console.WriteLine(payload.Length);
Отправьте на 127.0.0.1 и порт
18081 текст "status ok" и
выведите в консоль число байтов.
Отправьте на тот же адрес и порт два текста
"north" и "south" и
выведите в консоль длину каждого.