2010-09-24 149 views
1

有人可以確認-checkResourceIsReachableAndReturnError:方法NSURL正在按預期工作。我曾嘗試將它用於已知的網址,並且它始終返回NO。我正在使用XCode的iPhone Simulator 4.1。 謝謝。檢查URL的有效性

回答

5

根據NSURL Class Reference

Returns whether the resource pointed to by a file URL can be reached.
...
Discussion
This method is unimplemented in iOS, so it performs no operation

所以它僅適用於文件URL(其中您的網址可能不是),它僅適用於Mac OS X的反正。

+0

總之,適用於iOS,答案是否定的,對不對?任何解決方法? – Interfector 2010-09-25 05:26:10

+0

你到底想要達到什麼目的? – 2010-09-26 12:28:11

+0

我想看看我是否有在特定的遠程位置 – Interfector 2010-10-23 11:49:34

4

您可以使用此方法:

- (BOOL) validateUrl: (NSString *) url { 
    NSString *theURL = 
    @"(http|https)://((\\w)*|([0-9]*)|([-|_])*)+([\\.|/]((\\w)*|([0-9]*)|([-|_])*))+"; 
    NSPredicate *urlTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", theURL]; 
    return [urlTest evaluateWithObject:url]; 
    } 
+0

這無法正常工作。嬰兒,對於一些有效的URL,它返回NO。 – 2015-02-11 18:20:56

1

如果你只是想知道,如果URL是有效的,你可以

NSURLRequest *req = [NSURLRequest requestWithURL:[NSURL URLWithString:@"yourstring"]]; 
bool valid = [NSURLConnection canHandleRequest:req];