我需要为Mac编写一个CalDAV客户端库,我只是想确定最好的编写方式。
我想知道我是否应该只使用NSURLRequest,还是应该转到套接字级别,或介于两者之间?
我对使用NSURLRequest的担心是,每次调用都会建立一个新的连接,而不是只有一个打开的连接,所有“请求”都会通过。
我错过了什么吗?
思考?建议?
答案 0 :(得分:1)
NSURLRequest
实际上并未创建任何连接。它只是封装了请求的参数。 NSURLConnection
实际上创建了与服务器的连接并发送请求。根据这个答案,NSURLConnection
个实例共享并重用了TCP连接:
NSURLConnection is run many times
因此,如果他们的API适合您,您应该使用NSURLRequest
和NSURLConnection
。
答案 1 :(得分:1)
使用NSURLRequest
。尽管有命名,但NSURLConnection
对象与TCP连接没有一对一的对应关系。实际上,NSURLConnection
可能更恰当地命名为NSURLRequestLoadingManager
或其他东西 - 它只是一个跟踪特定请求进度的对象。
底层TCP连接由Cocoa管理,您无需担心其生命周期。