CFNetwork错误:由于URL格式不正确,连接失败

在运行iphone应用程序时,有几次我得到以下错误

The connection failed due to a malformed URL 

在“ CFNetwork Error Codes Reference ,我得到了由CFNetwork触发的错误信息

  • 何时以及为什么这个错误被触发?
  • 如何摆脱这个错误?

NSURLConnection有一个方法canHandleRequest,它将返回一个布尔值,无论url是否有效,例如

 NSString *strUrl = [NSString stringWithFormat:@"http://test.com/stopBoard/%i",busStopCode]; NSURL *url = [NSURL URLWithString:strUrl]; NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url cachePolicy:NSURLRequestReloadIgnoringLocalAndRemoteCacheData timeoutInterval:20.0]; // a cache policy of NO must be used otherwise the previous query is used if the phone is not online BOOL canGo = [NSURLConnection canHandleRequest:request]; if(canGo){ connection = [[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:YES]; } else { self.errorMessage = @"\n\nurl check failed\n\n"; return NO; }