我设法用Objective-C创建了一个可以连接到任何服务器的客户端,我的应用程序在iPad上运行..到目前为止,我已经在不同服务器telnet,nodejs甚至是基于Web的php上测试了该客户端服务器,它工作正常。 但是我的范围发生了变化,因为我需要我的应用程序充当服务器,因此与其连接到给定的套接字,不如先打开套接字并等待客户端连接并在两者之间建立通信。
以下是我在ipad上的客户端如何连接到服务器的摘要:
NSLog(@"Setting up connection to %@ : %i", _ipAddressText.text, [_portText.text intValue]);
CFStreamCreatePairWithSocketToHost(kCFAllocatorDefault, (__bridge CFStringRef) _ipAddressText.text, [_portText.text intValue], &readStream, &writeStream);
messages = [[NSMutableArray alloc] init];
[self open];
我尝试了cocoaAsyncSocket,但是在解决问题时遇到了麻烦: https://github.com/robbiehanson/CocoaAsyncSocket
答案 0 :(得分:0)
现在CocoaAsyncSocket有更好的本机替代品,即Apple的网络框架。
以下是使用nw函数的简单TCP客户端和服务器的一些不错的示例代码: https://developer.apple.com/documentation/network/implementing_netcat_with_network_framework