这一次说一下用AsyncSocket 来实现FTP的文件传输。
其实就是了解一下 AsyncSocket的使用方法,和 FTP中的一些常用命令。
AsyncSocket的下载地址是 https://github.com/robbiehanson/CocoaAsyncSocket
来说一下AsyncSocket的方法。
//链接服务器,port是服务器的端口,hostname 可以是 域名,也可以是ip地址。timeout为 -1时,表示不设置超时。
- (BOOL)connectToHost:(NSString *)hostname onPort:(UInt16)port error:(NSError **)errPtr;
- (BOOL)connectToHost:(NSString *)hostname onPort:(UInt16)port withTimeout:(NSTimeInterval)timeout error:(NSError **)errPtr;
//当有一个sockaddr 的地址时,可以直接用一下的方法 进行链接 官方给的方法是
struct sockaddr sa -> NSData *dsa = [NSData dataWithBytes:&remoteAddr length:remoteAddr.sa_len];
struct sockaddr *sa -> NSData *dsa = [NSData dataWithBytes:remoteAddr length:remoteAddr->sa_len];
- (BOOL)connectToAddress:(NSData *)remoteAddr error:(NSError **)errPtr;
- (BOOL)connectToAddress:(NSData *)remoteAddr withTimeout:(NSTimeInterval)timeout error:(NSError **)errPtr;
- (BOOL)connectToAddress:(NSData *)remoteAddr viaInterfaceAddress:(NSData *)interfaceAddr withTimeout:(NSTimeInterval)timeout error:(NSError **)errPtr;
//链接后的 delegate
- (void)onSocket:(AsyncSocket *)sock didConnectToHost:(NSString *)host port:(UInt16)port;