克服NSURL的checkResourceIsReachableAndReturnError的意外行为

在我为iOS 5创建的程序中,我遇到了NSURL的checkResourceIsReachableAndReturnError方法的意外行为。

我创建了一个新项目来validation问题并仅包含代码:

NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"]; NSError *err = nil; if([url checkResourceIsReachableAndReturnError:&err]){ NSLog(@"URL is reachable"); }else { NSLog(@"URL is not reachable"); } 

此外,我试过:

 NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"]; NSError *err = nil; [url checkResourceIsReachableAndReturnError:&err]; if(err == nil){ NSLog(@"URL is reachable"); }else { NSLog(@"URL is not reachable"); } 

…仍然无济于事。 结果始终是“URL无法访问”,与stackoverflow.com(以及我测试的其他域)相比,显然是可以访问的。 如何利用此function检查资源是否可达?

checkResourceIsReachableAndReturnError:的Apple文档 checkResourceIsReachableAndReturnError:状态:

 Returns whether the resource pointed to by a file URL can be reached. 

注意:“文件URL”,而不是Internet或其他方案URL。