苹果公司为开发者提供了C/S结构网络通信一些API和类库。
面向高层的web service有:NSURLRequest、NSMutableURLRequest、NSURLConnection、NSURLDownload、NSURL类;
面向低层次开发API有:socket通信有NSInputStream、NSOutPutStreamhai类,以及CFStreamCreatePairWithSocketToCFHost、CFSocketCreate函数,还有面向C language 的BSD Socket;
还有基于Bonjour发现服务API:NSNetService、NSNetServiceBrowser类,以及CFStreamCreatePairWithSocketToNetService函数。
Socket(套接字)实际是一个通信管道,通过一个双向的通信连接,实现数据交换;它是TCP/IP协议的一个比较流行的编程接口,一个Socket由一个IP地址和一个端口号唯一确定。
在iOS中,客户端Socket编程可以使用3种技术实现:
1.NSStream,面向Objective-C实现,Foundation框架API;
2.CFStream,面向C实现,Core Foundation框架API;
3.BSD Socket面(伯克利套接字),面向C实现,完全C编写;是UNIX平台下的Socket编程.
在iOS中,服务端Socket编程可以使用2种技术实现:
1.CFStream,面向C实现,Core Foundation框架API;
2.BSD Socket面(伯克利套接字),面向C实现,完全C编写;是UNIX平台下的Socket编程.
ps:Socket编程是一种网络编程标准,Client和Service端都不受编程语言限制,能够相互通信;Client可以是Objective-C编写,Service可以是Java编写,只要双方数据交互格式一致就可以。