メソッドを使用して複数の画像データをアップロードしていますASIHTTP request
。すべての画像が正常にアップロードされましたが、最後の画像ASIHttp
リクエストのみが失敗しました。いろいろ試しましたが、もう取れません。
誰かが私を助けることができますか?
私のコードは次のとおりです。
for(int i=0;i<[arySteps count];i++)
{
NSMutableArray *StepDetail=[[NSMutableArray alloc] initWithArray:[DatabaseAccess getAddSteps:str]];
if([[[StepDetail objectAtIndex:0] valueForKey:@"s_image"] length]!=0)
{
NSMutableArray *imgary=[[[[StepDetail objectAtIndex:0] valueForKey:@"s_image"] componentsSeparatedByString:@","] mutableCopy];
imagedata1=[[NSData alloc] init];
imagedata2=[[NSData alloc] init];
imagedata3=[[NSData alloc] init];
for (int i=0; i<[imgary count]; i++)
{
if(i==0)
{
NSString *filename=[NSString stringWithFormat:@"%@.jpeg",[imgary objectAtIndex:0]];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:filename];
NSURL *movieURL = [NSURL fileURLWithPath:filePath];
imagedata1=[NSData dataWithContentsOfURL:movieURL];
NSLog(@"%@",imagedata1);
}
else if(i==1)
{
NSString *filename=[NSString stringWithFormat:@"%@.jpeg",[imgary objectAtIndex:1]];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:filename];
NSURL *movieURL = [NSURL fileURLWithPath:filePath];
imagedata2=[NSData dataWithContentsOfURL:movieURL];
NSLog(@"%@",imagedata2);
}
else if(i==2)
{
NSString *filename=[NSString stringWithFormat:@"%@.jpeg",[imgary objectAtIndex:2]];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:filename];
NSURL *movieURL = [NSURL fileURLWithPath:filePath];
imagedata3=[NSData dataWithContentsOfURL:movieURL];
NSLog(@"%@",imagedata3);
}
}
NSString *strurl=[NSString stringWithFormat:@"http://inst.niftysol.com/app/webroot/webservices/test.php?said=%d&stepid=%@", appdel.idPARENTID,s_id_live];
[self setHttprequest:[ASIFormDataRequest requestWithURL:[NSURL URLWithString:strurl]]];
//NSString *userid=[NSString stringWithFormat:@"%d",appdel.idUID];
// [httprequest setPostValue:userid forKey:@"s_user_id"];
[httprequest setShouldContinueWhenAppEntersBackground:YES];
[httprequest setDelegate:self];
[httprequest setDidFinishSelector:@selector(uploadFinished:)];
[httprequest setDidFailSelector:@selector(uploadFailed:)];
[httprequest setData:imagedata1 withFileName:@"1.jpeg" andContentType:@"image/jpeg" forKey:@"userfile1"];
[httprequest setData:imagedata2 withFileName:@"2.jpeg" andContentType:@"image/jpeg" forKey:@"userfile2"];
[httprequest setData:imagedata3 withFileName:@"3.jpeg" andContentType:@"image/jpeg" forKey:@"userfile3"];
countupload=countupload+1;
[httprequest startAsynchronous];
}
}
上記のコードでは、すべての画像データを適切に取得していますが、最後の画像リクエストは失敗します。エラーが発生します:
エラー Domain=ASIHTTPRequestErrorDomain Code=4 「リクエストはキャンセルされました」 UserInfo=0x96fbfe0 {NSLocalizedDescription=リクエストはキャンセルされました}