Rápido, sube la image al server php con alamofire

Subo la foto con alamofird con este código:

Alamofire.upload(.POST, Url, multipartFormData: { multipartFormData in if let Data = UIImagePNGRepresentation(imageData) { multipartFormData.appendBodyPart(data: Data, name: "file", fileName: filename+".png", mimeType: "image/png") //print(Data) } multipartFormData.appendBodyPart(data: sessionId.dataUsingEncoding(NSUTF16LittleEndianStringEncoding)!, name: "session_id") multipartFormData.appendBodyPart(data: NSUserDefaults.standardUserDefaults().stringForKey("user_id")!.dataUsingEncoding(NSUTF8StringEncoding)!, name: "sender_id") }, encodingCompletion: { encodingResult in switch encodingResult { case .Success(let upload, _, _): upload.responseJSON { response in print(response) //var data = JSON(response.result.value!) } case .Failure(let encodingError): print(encodingError) } }) 

y tengo el siguiente error:

FALLO: Error Domain = NSCocoaErrorDomain Code = 3840 "Valor no válido alnetworkingedor del carácter 0." UserInfo = {NSDebugDescription = Valor no válido alnetworkingedor del carácter 0.}

y desde hace un día este código estaba funcionando

Solo reemplaza tu

 multipartFormData.appendBodyPart(data: NSUserDefaults.standardUserDefaults().stringForKey("user_id")!.dataUsingEncoding(NSUTF8StringEncoding)!, name: "sender_id") 

método de constructor a este constructor

  multipartFormData.appendBodyPart(data: image1Data, name: "post_img0", fileName: fileName!, mimeType: "image/png") 

Ex.

 let userID = NSUserDefaults.standardUserDefaults().integerForKey("UserID") let userData = String("\(userID)").dataUsingEncoding(NSUTF8StringEncoding) var image1Data : NSData! if(self.fecalImageView.image == nil ){ }else{ image1Data = UIImageJPEGRepresentation( self.fecalImageView.image!, 0.5)! } Alamofire.upload( .POST, "http://www.imagesample.php", multipartFormData: { multipartFormData in multipartFormData.appendBodyPart(data: userData!, name: "user_id") if(image1Data == nil){ }else{ multipartFormData.appendBodyPart(data: image1Data, name: "post_img0", fileName: fileName!, mimeType: "image/png") } }, encodingCompletion: { encodingResult in switch encodingResult { case .Success(let upload, _, _): upload.responseJSON { response in if let dict = response.result.value { let msg = dict["msg"]! if msg!.isEqualToString("sample Added successfully") { } } } case .Failure(let encodingError): print(encodingError) } } ) 

Esto solucionará su problema. Espere esta ayuda.