3

で起動するタイムアウトを取得できない問題のため、指定された期間内に応答があるかどうかを確認するためにを使用しようとしています。まだの場合は、リクエストをキャンセルしてユーザーに警告します。NSURLRequestUIWebViewNSTimer

ただし、で行われた現在のリクエストをキャンセルする方法が見つかりませんUIWebView

どうしますか?

私は次のようにリクエストを設定しましたUIWebView

NSString *theURL = [NSString stringWithFormat:@"https://%@%@", _hostname, LOGIN_PART_URL];
NSString *body = [NSString stringWithFormat:@"Username=%@&Password=%@", _username, _password];

NSMutableURLRequest *request = [[NSMutableURLRequest alloc]initWithURL:[NSURL URLWithString:theURL] 
                                                           cachePolicy:NSURLRequestUseProtocolCachePolicy
                                                       timeoutInterval:_timeoutInSecs];



[request setHTTPMethod: @"POST"];
[request setHTTPBody: [body dataUsingEncoding: NSUTF8StringEncoding]];

[web loadRequest:request];

キャンセル方式があるのはわかりますNSURLConnectionが、に相当するものはないようですUIWebView

私は何が欠けていますか?

ありがとう!ストレッチ:)

4

1 に答える 1

10

クラスにはstopLoadingメソッドがあります。UIWebViewそれはあなたのニーズを満たしていますか?

UIWebViewクラスごとの参照:

stopLoading

受信者が管理するWebコンテンツの読み込みを停止します。

- (void)stopLoading

メインフレームまたはその子フレームによってロードされる過程でコンテンツを停止します。コンテンツがロードされていない場合は何もしません。

于 2012-05-17T01:09:49.260 に答える