文件服务器超时,使用ASIFormDataRequest将大型文件上传到服务器时请求超时

我开发了一个ios应用程序,并用于制作服务器请求,我使用的是ASIHTTPRequest。我面临的问题是服务器请求超时,当我尝试上传大型文件。我已经尝试了SetData和SetFile方法,但是两者的问题都是一样的。我无法解决它。它吃了我的四天。我的代码如下。提前致谢。使用ASIFormDataRequest将大型文件上传到服务器时请求超时

- (void)syncTaskOnTheServer:(Tasks *)task ofTheUser:(NSString *)userId{

__block unsigned long long uploaded = 0;

ASIFormDataRequest *syncTask = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@tasks",baseurl]]];

syncTask.shouldAttemptPersistentConnection = NO;

[syncTask addPostValue:userId forKey:@"UserId"];

[syncTask addPostValue:appId forKey:@"AppId"];

[syncTask addPostValue:[NSString stringWithFormat:@"%@",task.taskTitle] forKey:@"Title"];

[syncTask addPostValue:[NSString stringWithFormat:@"%@",task.notes] forKey:@"Description"];

[syncTask addPostValue:[NSString stringWithFormat:@"%@",task.priority] forKey:@"Priority"];

[syncTask addPostValue:[NSString stringWithFormat:@"%@",task.taskCategory] forKey:@"TaskCategory"];

[syncTask addPostValue:[NSString stringWithFormat:@"%@",[NSString stringWithFormat:@"%@",task.creationDate]] forKey:@"CreationDate"];

syncTask.shouldUseRFC2616RedirectBehaviour = YES;

NSString *path = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];

if (![task.imagePath isEqualToString:@"No Image Attached"]) {

NSString *imageFilePath = [NSString stringWithFormat:@"%@/%@_image.jpg",path,task.taskurlSubPart];

UIImage *image = [UIImage imageWithContentsOfFile:imageFilePath];

NSData *imageData = UIImageJPEGRepresentation(image, 1.0);

NSLog(@"\n%@\n",task.taskurlSubPart);

[syncTask setData:imageData withFileName:[NSString stringWithFormat:@"%@.jpg",task.taskurlSubPart ] andContentType:@"image/jpeg" forKey:@"Image"];

/*

[syncTask setFile:imageFilePath withFileName:[NSString stringWithFormat:@"%@.jpg",task.taskurlSubPart] andContentType:@"image/jpeg" forKey:@"Image"];

*/

}

if (![task.audioURL isEqualToString:@"No Audio File"]) {

NSMutableString *audioFileName = [NSMutableString stringWithString:task.audioFileName];

[audioFileName appendString:@".caf"];

NSString *audioFilePath = [NSString stringWithFormat:@"%@/%@.caf",path,task.audioFileName];

NSData *audioData = [NSData dataWithContentsOfURL:[NSURL fileURLWithPath:audioFilePath]];

[syncTask setData:audioData withFileName:audioFileName andContentType:@"audio/x-caf" forKey:@"Audio"];

}

[syncTask setRequestMethod:@"POST"];

[syncTask setStartedBlock:^{

NSLog(@"start block");

}];

[syncTask setFailedBlock:^{

NSLog(@"\n%@\n",[syncTask error]);

NSString *serverResponse = [syncTask responseString];

WLParseServerResponse *parseResponse = [[WLParseServerResponse alloc] init];

[parseResponse parseSyncTaskResponse:serverResponse forTask:task];

[parseResponse release];

}];

[syncTask setCompletionBlock:^{

NSString *serverResponse = [syncTask responseString];

NSLog(@"\nserver response: %@\n",serverResponse);

WLParseServerResponse *parseResponse = [[WLParseServerResponse alloc] init];

[parseResponse parseSyncTaskResponse:serverResponse forTask:task];

[parseResponse release];

}];

[syncTask setHeadersReceivedBlock:^(NSDictionary *responseHeaders) {

NSLog(@"%@", responseHeaders);

}];

[syncTask setBytesSentBlock:^(unsigned long long size, unsigned long long total) {

uploaded += size;

NSLog(@"%llu, %llu", uploaded, total);

}];

[syncTask startAsynchronous];

}

+0

你的后端平台PHP/.NET /等? –

+0

@laxonline它是php –

+0

检查您的PHP ini文件“upload_max_filesize” –

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值