注意:向客户端写数据时最后需要加上 ,不然很久都不会得到服务端的返回。
上面为普通的socket服务端,最近项目采用apache mina框架建后台的socket服务端,采用上面的asyncSocket一直连接不上服务器,也在网上查询了大量的资料,最终发现需要如下:
NSString *requestStrFrmt = @"发送到服务端数据"; NSData *requestData = [requestStrFrmt dataUsingEncoding:NSUTF8StringEncoding]; Byte *testByte = (Byte *)[requestData bytes]; Byte bytes[requestData.length+1]; for(int i=0;i<[requestData length];i++){ bytes[i]=testByte[i]; } bytes[requestData.length]=0; NSData *adata = [[NSData alloc] initWithBytes:bytes length:requestData.length+1]; [asyncSocketwriteData:adata withTimeout:-1.0tag:0];
这样服务端就能正常的读取到数据并返回了