2012-04-10 12 views
3

Ich verwende MKNetworkKit vollkommen in Ordnung für alle meine Server-Anfragen. Wenn Sie jedoch versuchen, eine Bilddatei hochzuladen, schlägt dieser Fehler fehl:MKNetworkKit Datei-Upload funktioniert nicht in iOS

Fehler Domain = NSURLErrorDomain Code = -1005 "Die Netzwerkverbindung wurde unterbrochen." UserInfo = 0x1010cb20 {NSErrorFailingURLStringKey = https: //s3.amazonaws.com/net.myapp.upload, NSErrorFailingURLKey = https: //s3.amazonaws.com/net.myapp.upload, NSLocalizedDescription = Die Netzwerkverbindung ging verloren., NSUnderlyingError = 0x1010ca60 "Die Netzwerkverbindung ist verloren gegangen."}

Manchmal ist der Fehlercode 405. Ich habe alle amazon Anmeldeinformationen zum Hochladen, und eine CURL im Terminal mit den gleichen ausgehenden Daten ausgeführt die App hat eine a richtige Rückkehr. Die Methode, die ich für diese Anforderung verwenden ist hier:

- (MKNetworkOperation*)uploadMediaFromFile:(NSString*)file urlCommand:(NSString*)url  
postField:(NSString*)field authDict:(NSMutableDictionary*)authDict onCompletion:( 
MediaUploadBlock)completionBlock onError:(MKNKErrorBlock)errorBlock { 

    MKNetworkOperation *op = [self operationWithURLString:url params:authDict       
    httpMethod:@"POST"]; 

    [op addFile:file forKey:field]; 

    // setFreezable uploads your images after connection is restored! 
    [op setFreezable:YES]; 

    [op onCompletion:^(MKNetworkOperation* completedOperation) { 
     NSLog(@"%@",[completedOperation responseString]); 
     NSDictionary *jsonString = [completedOperation responseJSON]; 
     NSLog(@"%@",jsonString); 
     completionBlock(jsonString); 
    } 
    onError:^(NSError* error) { 
     errorBlock(error); 
    }]; 

    [self enqueueOperation:op forceReload:YES]; 

    return op; 
} 

Es ist eine ziemlich grundlegende Anforderung, die vom Terminal funktioniert und arbeitet aus dem Browser der gleichen Parameter hier zur Verfügung gestellt werden. Ich kann nicht herausfinden, warum das nicht funktioniert. Jede Hilfe wird geschätzt.

Antwort

0

"Die Netzwerkverbindung ist verloren" bedeutet, dass Ihre Wifi-Verbindung schlecht ist, zeitweise.

Verwandte Themen