2015-03-11 27 views
5

Sto facendo un'operazione di richiesta per scaricare ogni tipo di file da un server con AFHTTPRequestOperationManager.AFNetworking accetta tutti i tipi di contenuto

Al momento, sto facendo in questo modo:

AFHTTPRequestOperationManager *manager = [[AFHTTPRequestOperationManager alloc] initWithBaseURL:baseURL]; 
manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"image/jpeg", @"image/gif", @"image/png", @"application/pdf", ..., nil]; 

Si sta lavorando bene, ma vorrei per consentire a tutti i tipi di contenuto possibili per evitare di perdere un po '.

È possibile iniziare i tipi di contenuto accettabili per ogni tipo di contenuto esistente? Qualcosa di simile:

manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"*", nil]; 

Grazie.

+0

Il tipo mime di caratteri jolly è '*/*'. – Mats

+0

Sembra non. '[NSSet setWithObjects: @" */* ", nil]' E AFHTTPRequestOperation mi restituisce ancora: "Richiesta non riuscita: tipo di contenuto non accettabile: image/jpeg" – Tulleb

risposta

4

basta impostare acceptContentTypes su zero.

il codice in questione in AFNetworking assomiglia:

 if (self.acceptableContentTypes && ![self.acceptableContentTypes containsObject:[response MIMEType]]) { 
     ... 

se acceptableContentTypes è pari a zero, allora non dà fastidio il controllo, e solo svolge il download.

0

Se chiunque trovi questo ha bisogno di aggiungere un tipo di immagine MIME specifico per l'elenco dei contenuti accettabili è possibile effettuare le seguenti operazioni:

#import <AFNetworking/UIImageView+AFNetworking.h> 
 
#import <AFNetworking/AFImageDownloader.h> 
 

 
AFImageResponseSerializer* serializer = (AFImageResponseSerializer*)[UIImageView sharedImageDownloader].sessionManager.responseSerializer; 
 
serializer.acceptableContentTypes = [serializer.acceptableContentTypes setByAddingObject:@"image/jpg"];

Avevamo bisogno di sostenere "image/jpg" I tipi MIME e questo ha funzionato perfettamente.