1

iPhoneアプリを実行しているときに、次のエラーが何度か発生しました

The connection failed due to a malformed URL

CFNetwork Error Codes Reference、このエラーがCFNetworkによってトリガーされたという情報を取得しました

  • このエラーがトリガーされるのはいつ、なぜですか?
  • このエラーを取り除く方法は?
4

1 に答える 1

2

NSURLConnectionには、URLが有効かどうかに関係なくブール値を返すcanHandleRequestメソッドがあります。

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;
}
于 2012-09-12T08:34:51.897 に答える