2

在我想检查的 iPhone 上,是否存在网站上的特定文件(test.licence)。我的方法(到目前为止)是下载文件并检查它是否存在于我的 Documents 目录中。但是,如果该文件不存在,Apache 会显示一个 HTML 错误页面(我下载它而不是 test.licence)。检查文件大小是一个模糊的解决方案,因为它会有所不同。

那么,如何检查是否存在在线文件(不是更多)?我正在寻找一个简单而干净的解决方案。

问候,

斯特凡

4

2 回答 2

7

提交NSURLRequestvia NSURLConnection。当您收到响应时,请检查状态码是 200(存在)、404(不存在)还是其他(发生了不同的事情)。

于 2010-06-21T15:59:41.533 回答
3

404 错误代码是查看页面是否存在的正确方法,但如果您打算在 UIWebView 中显示该页面,您将需要先检查该页面是否存在,如果存在,那么您在 web 视图中再次加载它(如果你先这样做,你可能会显示 Apache 错误页面)。

为了不使用两次带宽,对于第一次健全性检查以查看文件是否存在,您可以执行 HEAD 请求,该请求仅获取 HTTP 标头而不是页面的正文。只需将其添加到您的代码中(假设 urlRequest 是 NSURLRequest 类型):

[urlRequest setHTTPMethod:@"HEAD"];
于 2010-06-21T19:36:59.250 回答