• 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]; 
    
    }
  • 相关阅读:
    连通最大子数组和(结对开发)
    第五周学习进度情况
    敏捷开发方法综述
    第四周学习进度情况
    环形数组最大子数组之和
    第四次程序(结对开发)
    第三周学习进度情况
    第三次程序—四则运算(结对开发)
    构建之法阅读笔记02
    按照Right-BICEP要求对实验二进行测试
  • 原文地址:https://www.cnblogs.com/liuzhi20101016/p/9888393.html
Copyright © 2020-2023  润新知