NSURLConnectionに関する質問
Posted: 2010年9月08日(水) 00:10
お世話になっております。
Objective-C / iPhone
NSURLConnectionの通信に関して質問です。
http://www.saturn.dti.ne.jp/~npaka/ipho ... index.html
こちらのサンプルを参考に、NSDataとして画像等のバイナリデータ
をDLする動作実装を行ったのですが、
ファイルが存在しない場合でも、Not Foundのhtmlページの内容を
取得してしまう為、「データ受信失敗時に呼ばれる」関数が呼ばれず、
エラーチェックが、うまくいきません。
このような場合、ファイルの存在確認は別の方法で行うのでしょうか?。
//GETによるHTTP通信
- (void)http2data:(NSString*)url delegate:(id)delegate {
NSURLRequest* request=[NSURLRequest
requestWithURL:[NSURL URLWithString:ur[/url]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:30.0];
[NSURLConnection connectionWithRequest:request
delegate:delegate];
//インジケーターのアニメーションの開始
[_indicator startAnimating];
}
//データ受信開始時に呼ばれる
- (void)connection:(NSURLConnection*)connection
didReceiveResponse:(NSURLResponse*)response {
if (_data!=nil) [_data release];
_data=[[NSMutableData data] retain];
}
//データ受信時に呼ばれる
- (void)connection:(NSURLConnection*)connection
didReceiveData:(NSData*)data {
[_data appendData:data];
}
//データ受信失敗時に呼ばれる
- (void)connection:(NSURLConnection*)connection
didFailWithError:(NSError*)error {
}
Objective-C / iPhone
NSURLConnectionの通信に関して質問です。
http://www.saturn.dti.ne.jp/~npaka/ipho ... index.html
こちらのサンプルを参考に、NSDataとして画像等のバイナリデータ
をDLする動作実装を行ったのですが、
ファイルが存在しない場合でも、Not Foundのhtmlページの内容を
取得してしまう為、「データ受信失敗時に呼ばれる」関数が呼ばれず、
エラーチェックが、うまくいきません。
このような場合、ファイルの存在確認は別の方法で行うのでしょうか?。
//GETによるHTTP通信
- (void)http2data:(NSString*)url delegate:(id)delegate {
NSURLRequest* request=[NSURLRequest
requestWithURL:[NSURL URLWithString:ur[/url]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:30.0];
[NSURLConnection connectionWithRequest:request
delegate:delegate];
//インジケーターのアニメーションの開始
[_indicator startAnimating];
}
//データ受信開始時に呼ばれる
- (void)connection:(NSURLConnection*)connection
didReceiveResponse:(NSURLResponse*)response {
if (_data!=nil) [_data release];
_data=[[NSMutableData data] retain];
}
//データ受信時に呼ばれる
- (void)connection:(NSURLConnection*)connection
didReceiveData:(NSData*)data {
[_data appendData:data];
}
//データ受信失敗時に呼ばれる
- (void)connection:(NSURLConnection*)connection
didFailWithError:(NSError*)error {
}