Je suis essaie de télécharger une vidéo de plus de 10 Mo, quand je l'envoyer par ASIHTTPRequest il démarre la connexion, mais pas télécharger ce film sur le Webproblème pour télécharger une vidéo de plus de 10 Mo?
Répondre
Je résoudre ce problème avec l'utilisation t son chemin, Fondamentalement erreur est accumuler en raison de la limite de téléchargement du serveur
-(void)uploadeVideoClicked{
if (_picker) {
[_picker dismissModalViewControllerAnimated:NO];
[_picker.view removeFromSuperview];
[_picker release];
}
if (_popover) {
[_popover dismissPopoverAnimated:NO];
[_popover release];
}
_picker = [[[UIImagePickerController alloc] init] retain];
_picker.delegate = self;
_picker.editing = NO;
_picker.allowsEditing=NO;
_picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
_picker.wantsFullScreenLayout = YES;
_picker.videoQuality =UIImagePickerControllerQualityTypeLow;
_picker.mediaTypes =[NSArray arrayWithObject:(NSString *)kUTTypeMovie];
_popover = [[[UIPopoverController alloc] initWithContentViewController:_picker] retain];
[_popover setDelegate:self];
[_popover presentPopoverFromRect:infoButton.frame
inView:self.view
permittedArrowDirections:UIPopoverArrowDirectionAny
animated:YES];
}
#pragma mark -----------------------------
#pragma mark Image Picker Delegate Methods
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
NSString *mediaType = [info objectForKey:UIImagePickerControllerMediaType];
if ([mediaType isEqualToString:@"public.image"]){
UIAlertView *myAlertView = [[UIAlertView alloc] initWithTitle:@"" message:@"You Select a image Please select Movie" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
[myAlertView show];
[myAlertView release];
}
else if ([mediaType isEqualToString:@"public.movie"]){
NSURL *videoURL = [info objectForKey:UIImagePickerControllerMediaURL];
//NSLog(@"found a video");
if (webData) {
[webData release];
webData = nil;
}
webData = [[NSMutableData alloc]initWithContentsOfURL:videoURL];
// webData = [NSData dataWithContentsOfURL:videoURL];
spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
spinner.center = self.view.center;
[self.view addSubview:spinner];
[spinner startAnimating];
[self performSelector:@selector(uploadVideo) withObject:nil afterDelay:.001];
}
[_picker dismissModalViewControllerAnimated:YES];
[_picker.view removeFromSuperview];
[_picker release];
_picker = nil;
[_popover dismissPopoverAnimated:YES];
[_popover release];
}
-(void)uploadVideo
{
NSString *url = [NSString stringWithFormat:@"http://example.com/uploadvideoxml.php"];
networkQueue = [[ASINetworkQueue alloc] init];
[networkQueue cancelAllOperations];
[networkQueue setShowAccurateProgress:YES];
[videoUploadProgressView setHidden:NO];
progressView.center = self.view.center;
[self.view addSubview:progressView];
[networkQueue setUploadProgressDelegate:videoUploadProgressView];
[networkQueue setDelegate:self];
[networkQueue setRequestDidFinishSelector:@selector(requestFinished:)];
[networkQueue setRequestDidFailSelector: @selector(requestFailed:)];
request= [[ASIFormDataRequest alloc] initWithURL:[NSURL URLWithString:url]] ;
[request setPostValue:[[mAppDelegate.userInfoArray objectAtIndex:1]valueForKey:@"user_id"] forKey:@"user_id"];
[request addRequestHeader:@"Content-Type"
value:@"multipart/form-data;boundary=---------------------------1842378953296356978857151853"];
NSDate *date1=[NSDate date];
NSDateFormatter *formatter1 = [[NSDateFormatter alloc] init];
[formatter1 setDateFormat:@"hh:mm"];
NSString *valuestr = [formatter1 stringFromDate:date1];
////NSLog(@"%@",valuestr);
[formatter1 release];
NSString *moviename = [NSString stringWithFormat:@"WakeUUUP_%d_%@.mov",[videolistArray count],valuestr];
if(webData != nil){
[request setFile:webData withFileName:moviename andContentType:@"video/quicktime" forKey:@"userfile"];
}
[request setTimeOutSeconds:5000];
//NSLog(@"%@",request);
[networkQueue addOperation:request];
[networkQueue go];
}
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
{
[_picker dismissModalViewControllerAnimated:YES];
[_picker.view removeFromSuperview];
[_picker release];
_picker = nil;
[_popover dismissPopoverAnimated:YES];
[_popover release];
}
//for Ipad UIPopoverController if there is a cancel when the user click outside the popover
- (void)popoverControllerDidDismissPopover:(UIPopoverController *)popoverController
{
[_picker dismissModalViewControllerAnimated:YES];
[_picker.view removeFromSuperview];
[_picker release];
_picker = nil;
}
#pragma mark -------------------------
#pragma mark ASIHTTPREQUEST Delegate
- (void)requestFailed:(ASIHTTPRequest *)req
{
[progressView removeFromSuperview];
[videoUploadProgressView setHidden:YES];
////NSLog(@"Request failed: %@",[req error]);
UIAlertView *errorAlert = [[UIAlertView alloc] initWithTitle:@"Failed to Post Item" message:[[req error] description] delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil, nil];
[errorAlert show];
[errorAlert release];
[networkQueue release];
[request release];
}
- (void)requestFinished:(ASIHTTPRequest *)req
{
[networkQueue release];
[request release];
[progressView removeFromSuperview];
[videoUploadProgressView setHidden:YES];
[[Parsing sharedInstance] assignSender:self];
NSMutableArray *resultArray =[[[NSMutableArray alloc]initWithArray:[[Parsing sharedInstance]startparsingforfun:[req responseData]]]autorelease];
NSLog(@"Response was: %@",resultArray);
if (spinner) {
[spinner stopAnimating];
[spinner removeFromSuperview];
[spinner release];
spinner = nil;
}
if ([[[resultArray objectAtIndex:1]objectForKey:@"Transaction"]isEqualToString:@"uploadvideoxml"]) {
if ([[[resultArray objectAtIndex:1]objectForKey:@"success"]isEqualToString:@"true"]) {
[self viewWillAppear:YES];
}else {
UIAlertView *errorAlert = [[UIAlertView alloc] initWithTitle:@"Failed to Update Profile" message:nil delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil, nil];
[errorAlert show];
[errorAlert release];
}
}
}
il pourrait être dû à une limitation de la taille de votre côté serveur
-Edit-
téléchargement à l'aide NSURLConnection à la demande suivante (si vous utilisez des données de formulaire multipart qui est généralement le cas):
// some random value
NSString *boundary = @"0xKhTmLbOuNdArY---ThIs_Is_mY_BoUnDaRyY---pqo";
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url
cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:20.0];
[request setHTTPMethod:@"POST"];
NSString *theContentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@", boundary];
[request setValue:theContentType forHTTPHeaderField:@"Content-type"];
NSData *theData = data;// here use your movie data
//adding the body:
NSMutableData *postBody = [NSMutableData data];
// data part
[postBody appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[postBody appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"content\"; filename=\"dummy%i.mp4\"\r\n",[[NSDate date]timeIntervalSince1970]] dataUsingEncoding:NSUTF8StringEncoding]];
[postBody appendData:[[NSString stringWithFormat:@"Content-Type: %@\r\n",contentType] dataUsingEncoding:NSUTF8StringEncoding]];
[postBody appendData:[@"Content-Transfer-Encoding: binary\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
[postBody appendData:theData];
[postBody appendData:[@"\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
// final boundary
[postBody appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[request setHTTPBody:postBody];
[request setValue:param forHTTPHeaderField:@"Parameter"];
Mon serveur côté taille de la limitation est de 128 Mo, je peux poster 128 Mo – GhostRider
avez-vous essayé de télécharger en utilisant NSURLConnection directement et voir si vous avez le même problème .. vérifier ma réponse éditée – YNK
- 1. Transférer 10-40 Mo de données dans WCF
- 2. PHP problème de téléchargement de fichiers vidéo
- 3. télécharger des fichiers volumineux 100 Mo + progression
- 4. télécharger une image et vidéo
- 5. Augmenter le cache de l'iPad de plus de 50 Mo?
- 6. Problème de téléchargement d'un fichier de 25 Mo - le fichier 8 Mo télécharge sans problème (ASP.NET)
- 7. Impossible de télécharger le fichier tiff d'une taille de 5 Mo ou plus
- 8. GData youtube vidéo télécharger manquant problème audio
- 9. Utilisation de Java pour télécharger une vidéo via PUT
- 10. Comment télécharger un fichier sur 2 Mo
- 11. Tri de 10 millions d'entiers avec 1 Mo d'espace Explication de la solution - Perles de programmation
- 12. Le téléchargement du fichier échoue pour les fichiers de plus de 64 Mo
- 13. Envoi d'e-mails avec une pièce jointe de moins de 10 Mo à partir d'AWS SES
- 14. Script PHP utilisant plus de 512 Mo en traitant seulement un tableau de quelques Mo
- 15. Obtenir la taille de la vidéo en Mo Android
- 16. Youtube vidéo télécharger/télécharger avec légendes/fichiers de transcription
- 17. Vous cherchez une explication plus complète de la façon de télécharger la vidéo sur YouTube
- 18. Téléchargement BLOB tronqué à 1 Mo Script fonctionne pour les fichiers moins de 1 Mo
- 19. Télécharger le fichier plus de 500mb taille
- 20. Comment télécharger une vidéo dans l'iPhone SDK
- 21. La connexion a été interrompue pour le téléchargement de fichiers de plus de 4 Mo
- 22. clip vidéo ne joue plus (autorelease problème)
- 23. En utilisant get_video sur YouTube pour télécharger une vidéo
- 24. Éviter le téléchargement de fichiers de taille supérieure à 10 Mo
- 25. Comment télécharger un fichier énorme (au-dessus de 50 Mo) sur le serveur
- 26. problème de commandes manuelles, plus de 10 produits dans une commande laissera l'ordre disparaître (oscommerce)
- 27. Besoin d'un script shell qui identifie tous les fichiers récursivement sous un répertoire de plus de 10 Mo
- 28. 10 Listview problème de remplissage
- 29. Est-ce que la limite de 10 Mo pour un téléchargement App Store 3g pour le zip ou le binaire?
- 30. télécharger une vidéo youtube en C++
Fonctionne-t-il avec des films de moins de 10 Mo? – deanWombourne
oui son travail bien moins de 10 MB – GhostRider