iPhone:异步 HEAD 方法

Posted

技术标签:

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

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

【问题讨论】:

是的,可以这样做 【参考方案1】:

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

还有:

initWithRequest:delegate: initWithRequest:delegate:startImmediately: start

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

请参考NSURLConnection Class Reference和NSURLConnectionDelegate 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 可以自动将下载的数据存储在缓存中以供以后使用。这在许多情况下都有用...

【讨论】:

以上是关于iPhone:异步 HEAD 方法的主要内容,如果未能解决你的问题,请参考以下文章

在 UITableView 中的 iPhone 上异步加载 JSON

iphone dev - 异步加载表格内容

使用ajax发送异步请求,请求后端的控制层方法,并且获取这个方法返回的日期,然后显示在页面上?

iPhone:管理视图动画到异步事件

iPhone GameKit 异步服务器模式

Android 上的异步套接字实现