收發廣播消息要用到Udp協議
服務端發送廣播:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;
namespace UdpBroadCast
{
class Program
{
static void Main(string[] args)
{
UdpClient udpClient = new UdpClient(AddressFamily.InterNetwork);
IPEndPoint broadcastIp = new IPEndPoint(IPAddress.Broadcast, 4534);
int i = 0;
while (true)
{
i++;
Byte[] b = Encoding.UTF8.GetBytes("廣播消息"+i);
udpClient.Send(b, b.Length, broadcastIp);
Console.WriteLine(i);
System.Threading.Thread.Sleep(1000);
}
}
}
}
客戶端接收廣播消息:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;
namespace UdpBroadClientRecv
{
class Program
{
static void Main(string[] args)
{
UdpClient recevieUdpClient = new UdpClient(4534);
IPEndPoint loaclIP = new IPEndPoint(IPAddress.Any, 0);
while (true)
{
Byte[] r = recevieUdpClient.Receive(ref loaclIP);
Console.WriteLine(Encoding.UTF8.GetString(r));
}
}
}
這樣一個簡單的收發廣播消息的系統就完成了。