-(IBAction)uploadToServer :(id)sender
{
NSString *str1=[[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"intro.mp4"];
NSLog(@"str1=%@",str1);
NSString *escapedUrlString = [str1 stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSLog(@"escapedUrlString=%@",escapedUrlString);
NSURL *videoURL = [NSURL URLWithString:escapedUrlString];
NSLog(@"videoURL=%@",videoURL);
NSData *newdata = [NSData dataWithContentsOfFile:escapedUrlString];
webdata=[NSData dataWithData:newdata];
NSLog(@"webData = %@",webdata);
[self post:webdata];
}
- (void)post:(NSData *)fileData
{
NSData *videoData = fileData;
NSString *urlString = @"http://rompio.com/web_service/web.php?method=upload_video&user_id=4";
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setURL:[NSURL URLWithString:urlString]];
[request setHTTPMethod:@"POST"];
NSString *boundary = @"---------------------------14737809831466499882746641449";
NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@", boundary];
[request addValue:contentType forHTTPHeaderField:@"Content-Type"];
NSMutableData *body = [NSMutableData data];
[body appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[@"Content-Disposition: form-data; name=\"userfile\"; filename=\".mp4\"\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[@"Content-Type: application/octet-stream\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[NSData dataWithData:videoData]];
[body appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[request setHTTPBody:body];
NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
NSString *returnString = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding];
NSLog(@"returnString=== %@", returnString);
}
ответ
Это легко сделать с библиотекой AFNetworking, и вы также можете использовать ее для отслеживания хода загрузки видео. Вы можете загрузить библиотеку AFNetworking с here.
И для настройки AFnetworking обратитесь к этому Link.
И этот код будет использоваться для отправки видео на сервере
NSString *videoURL = [[NSBundle mainBundle] pathForResource:@"myVideo" ofType:@"mov"];
NSData *videoData = [NSData dataWithContentsOfURL:[NSURL fileURLWithPath: videoURL]];
AFHTTPClient *httpClient = [AFHTTPClient clientWithBaseURL:[NSURL URLWithString:@"http://www.example.com"]];
NSMutableURLRequest *request = [httpClient multipartFormRequestWithMethod:@"POST" path:@"/videoupload.php" parameters:nil constructingBodyWithBlock:^(id <AFMultipartFormData>formData)
{
[formData appendPartWithFileData:videoData name:@"file" fileName:@"myVideo.mov" mimeType:@"video/quicktime"];
}];
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest: request];
[operation setUploadProgressBlock:^(NSInteger bytesWritten,long long totalBytesWritten,long long totalBytesExpectedToWrite)
{
NSLog(@"Sent %lld of %lld bytes", totalBytesWritten, totalBytesExpectedToWrite);
}];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {NSLog(@"Video Uploaded Successfully");}
failure:^(AFHTTPRequestOperation *operation, NSError *error) {NSLog(@"Error : %@", operation.responseString);}];
[operation start];
Я загружаю файл для сети AF. Но нет такого имени файла, состоящего из AFHTTPClient. – rahul
. В новом обновлении AFNetworking есть некоторые изменения. Http://stackoverflow.com/questions/19502673/afnetworking-afhttpclient- class – Dilip
[operation setUploadProgressBlock:^(NSInteger bytesВписано, long long totalBytesWritten, long long totalBytesExpectedToWrite) Теперь я получаю ошибку только в этой строке. Несовместимые типы указателей блоков, отправляющие 'void (^) (NSInteger, long long, long long)' в параметр типа 'void (^) (NSUInteger, long long, long long)' – rahul
- 1. Как загрузить видео на сервер с iPhone с AFNetworking
- 2. Загрузить видео на сервер
- 3. Как загрузить фотографию на сервер с iPhone?
- 4. Отправка видео iphone на сервер
- 5. Загрузить данные на сервер IPhone
- 6. Загрузить большое видео с PhotoLibrary на сервер
- 7. Загрузить видео файла на сервер с BackgroundUploader
- 8. PHP, как просто загрузить видео на сервер
- 9. Загрузить видео на сервер с android sdcard
- 10. Загрузить фото с iPhone на сервер 4D
- 11. Загрузить фотографии с iphone на веб-сервер
- 12. Как загрузить видео в iPhone SDK
- 13. Загрузить файл на FTP-сервер на iPhone
- 14. Как загрузить видеофайл на веб-сервер iphone sdk
- 15. android загрузить видео и строку на сервер
- 16. Как потоковое видео с iPhone на медиа-сервер
- 17. Как жить потоковым видео с iPhone на сервер Wowza?
- 18. Загрузить большое видео на сервер в ios
- 19. Как загрузить видео с устройства iOS на сервер Django
- 20. загрузить большие видео файлы на iPhone
- 21. Как загрузить видео на facebook с помощью iphone sdk 4.0?
- 22. Загрузить видео на YouTube из iphone приложения
- 23. Как загрузить UIImage на сервер?
- 24. Iphone Загрузить строку на FTP-сервер
- 25. IPHONE - как загрузить видео из библиотеки?
- 26. загрузка изображения/аудио/видео на сервер в iphone ..?
- 27. Дисплей UIprogressiveView для загрузки видео на сервер в Iphone
- 28. Как загрузить аудио + видео как один на сервер?
- 29. Невозможно загрузить видео с помощью ASIHttpFormDataRequest --- iPhone
- 30. Загрузить фото с iPhone на сервер Rails с attachment_fu
Написать вам код правильно так будет легко понятно другим. В любом случае, какова проблема, которую вы получаете при загрузке? –
http://stackoverflow.com/questions/20047607/uploading-file-only-transmits-few-byes-fo-data-ios/20069694#20069694 – Dilip
В этом коде.WebData наступает Null.Also Video не удается получить отправленный на сервер. – rahul