iOS-基于TCP连接<Scoket-客户端>

一:前言(本文为TCP客户端)

TCP首先要服务器开放一个端口 然后客户端去连接服务端的IP地址和端口号 连接成功之后再进行数据传输 要经历三次握手

二:代码在GitHub

1.需要的工具类 自行下载

2.部分代码及其截图

<1>创建TCP-Scoket

//1.创建客户端scoket
    self.clientSocket = [[GCDAsyncSocket alloc] initWithDelegate:self delegateQueue:dispatch_get_main_queue()];
 1 //2.链接服务器
 2 socket BOOL result = [self.clientSocket connectToHost:@"172.20.10.1" onPort:[@"8000" integerValue] error:nil]; 
 3 //判断链接
 4  if (result) {
 5  //成功 
 6 NSLog(@"链接成功");
 7  }else{ 
 8 //失败
 9  NSLog(@"链接失败"); 
10 }

<2>发送数据

[self.clientSocket writeData:data withTimeout:-1 tag:0];

<3>代理

#pragma mark ------------ //客户端链接服务器成功 
- (void)socket:(GCDAsyncSocket *)sock didConnectToHost:(NSString *)host port:(uint16_t)port{ 

NSLog(@"%@",[NSString stringWithFormat:@"链接成功服务器:%@",host]); 

[self.clientSocket readDataWithTimeout:-1 tag:0]; 
} 

- (void)socket:(GCDAsyncSocket *)sock didWriteDataWithTag:(long)tag{ 

NSLog(@"消息发送成功");

 }

 //成功读取服务端发过来的消息 
- (void)socket:(GCDAsyncSocket *)sock didReadData:(NSData *)data withTag:(long)tag{ 

NSLog(@"%lu",(unsigned long)[data length]); 

[self.clientSocket readDataWithTimeout:-1 tag:0]; 

}

猜你喜欢

转载自www.cnblogs.com/liuzhi20101016/p/9888393.html
今日推荐