【问题标题】:iPhone: Asynchronous HEAD methodiPhone:异步 HEAD 方法
【发布时间】:2012-04-26 12:29:27
【问题描述】:

我在这里很新。我试图从网络服务器更新文件的内容,只有当它发生变化时。我在这里找到了一个在 NSURLconnection 中使用同步连接的代码示例。 可以异步做吗?

【问题讨论】:

  • 是的,可以这样做

标签: iphone objective-c ios cocoa-touch ios5


【解决方案1】:

NSURLConnection 具有用于同步连接的方法sendSynchronousRequest:returningResponse:error:。它还有一个用于异步连接的方法sendAsynchronousRequest:queue:completionHandler:。您需要为completionHandler 参数创建一个块,用于处理来自Web 服务器的响应。

还有:

  • initWithRequest:delegate:
  • initWithRequest:delegate:startImmediately:
  • start

可用于异步使用。你需要实现NSURLConnectionDelegate 的一些方法来处理异步响应。

请参考NSURLConnection Class ReferenceNSURLConnectionDelegate Protocol Reference

【讨论】:

    【解决方案2】:

    我认为ASIHTTPRequest 是最简单的解决方案:

    为您的ASIHTTPRequest 设置request 方法

    // HTTP method to use (eg: GET / POST / PUT / DELETE / HEAD etc). Defaults to GET
    NSString *requestMethod;
    

    或者您可以使用download cache

    ASIHTTPRequest 可以自动将下载的数据存储在缓存中以供以后使用。这在许多情况下都有用...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-12-19
      • 1970-01-01
      • 1970-01-01
      • 2010-11-27
      • 2013-06-12
      • 1970-01-01
      相关资源
      最近更新 更多