特定端口上实现服务器上的呼应系统说8070
我做广播消息的使用下面的代码给出的端口。
broadCastSocket = [[GCDAsyncUdpSocket alloc] initWithDelegate:self delegateQueue:dispatch_get_main_queue()];
if ([broadcastSocket enableBroadcast:true error:&error] == false) {
NSLog(@"Failed to enable broadcast, Reason %@:",[error userInfo]);
}
NSData *data = [QueryString dataUsingEncoding:NSUTF8StringEncoding];
[broadcastSocket sendData:data toHost:@"255.255.255.255" port:8070 withTimeout:-1 tag:5];
您的所有服务器都将接收端口上的数据并回显给定端口的系统回复。现在你可以听到这些端口,并获得所有将回复的服务器的IP地址。当然,如果服务器是你的,这个技巧只会起作用。
注意::我正在使用GCDAsyncSocket库,但你可以使用任何你想要的。
你说你不想使用Bonjour,因为你的服务器在Windows上运行 - 你看过[Bonjour SDK](https://developer.apple.com/bonjour/)吗?它具有各种语言的Windows库。 – thegrinner
不,我没有。我会看看,我认为我需要在窗户端安装bonjour服务,这就是为什么。 – user1451884