为什么我更喜欢NSURLConnection的ASIHTTPRequest从网上下载文件?

我见过几次使用ASIHTTPRequest来下载文件的人。 现在我想知道为什么? NSURLConnection的核心优势是什么?

有几个原因。 在我看来,这些是主要的:

  1. ASIHTTPRequest允许为每个请求指定一个委托(相对于整个NSURLConnection一个委托); 这很有用,因为一旦你得到你正在等待的数据,每个请求原则上都有不同的处理;

  2. ASIHTTPRequest支持一个caching机制,使得你的应用程序在离线状态下非常容易工作(并显示caching的数据)。 NSURLRequest中没有这样的机制;

  3. 如果你search的是stackoverflow,你会发现很多提示NSURLConnection/NSURLRequest引起的一个非常奇怪的内存泄漏 ; 这在ASIHTTRequest是没有经验的;

  4. ASIHTTRequest提供更好的实现可达性,这是绝对必要的; 苹果提供了一个据说是越野车 。

希望这可以帮助。

ASIHTTPRequest更容易使用。 您不必手动连接数据块,POST请求易于构build,支持块, ASIHTTPRequestASIHTTPRequest的子类,因此您可以轻松地排列请求等。

ASIHTTPRequest的力量点是恕我直言:

  • 使用方便
  • 文件发布
  • 内置身份validation
  • 内置zlib压缩
  • queing

恕我直言,它归结为程序员的易用性。 这是非常容易的工作,是非常有据可查的。 您可以非常轻松地使用队列并通过委派pipe理自己的状态。

在文件范围之外,使用ASI处理响应委托相对于内置的NSURL类更为容易。