我们想用NSURLSession上传。 下面是代码在目标C端:使用[defaultSession uploadTaskWithRequest:request fromFile:fileURL]上传的文件;不在服务器端上传文件
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration backgroundSessionConfigurationWithIdentifier:@"uploadFileServer"];
NSString *[email protected]"testing.jpg";
image_name=[fileDest stringByAppendingPathComponent:image_name];
NSMutableURLRequest *request =[[NSMutableURLRequest alloc] init];
[request setURL:[NSURL URLWithString:urlString]];
NSString *boundary = @"14737809831466499882746641449";
NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@",boundary];;
[request addValue:contentType forHTTPHeaderField: @"Content-Type"];
[request setHTTPMethod:@"PUT"];
NSURLSession *defaultSession= [NSURLSession sessionWithConfiguration:configuration delegate:self delegateQueue:
[NSOperationQueue new]];
NSURL *fileURL =[NSURL fileURLWithPath:image_name];
NSURLSessionUploadTask *uploadTask = [defaultSession uploadTaskWithRequest:request fromFile:fileURL];
[uploadTask resume];
在服务器端的文件没有收到。 下面是在服务器端代码:
<?php
$body = '';
$fh = @fopen('php://input', 'r');
if ($fh)
{
while (!feof($fh))
{
$s = fread($fh, 1024);
if (is_string($s))
{
$body .= $s;
}
}
fclose($fh);
}
?>
如果我们上传文件的数据,它工作正常,但对我的要求我必须使用方法 上传文件的背景 - (NSURLSessionUploadTask *)uploadTaskWithRequest:(的NSURLRequest *)要求fromFile:(NSURL *)fileURL;
请指导我们。
回复:“如果我们上传文件的数据,它工作正常”。你什么意思?你能提供可以正常工作的代码吗? – Avt
如果我使用以下方法上传图像数据,那么它工作正常。 NSURLSessionUploadTask * uploadTask = [defaultSession uploadTaskWithRequest:request fromData:imageData]; fromData:为imageData]; –
有什么想法?从服务器端的php代码似乎有问题。 –