1
votes

I'm new in swift.i'm using Alamofire for upload image and parameters with multipart but my code is not working. please help me what am i did wrong.

Alamofire.upload(.POST, kServerURLForUploadDocument,headers: headerDict, multipartFormData: { multipartFormData in

        if let _image = image
        {
            if let imageData = UIImageJPEGRepresentation(_image, 1.0)
            {
                multipartFormData.appendBodyPart(data: imageData, name:kDocument_image)
                multipartFormData.appendBodyPart(data: self.registrationNumber.dataUsingEncoding(NSUTF8StringEncoding)!, name: kRegistration_number)
                multipartFormData.appendBodyPart(data: "168".dataUsingEncoding(NSUTF8StringEncoding)!, name: kUser_id)
                multipartFormData.appendBodyPart(data: "jpg".dataUsingEncoding(NSUTF8StringEncoding)!, name: kType)
                multipartFormData.appendBodyPart(data: "test".dataUsingEncoding(NSUTF8StringEncoding)!, name: kComment)
            }
        }

        },
        encodingCompletion: { encodingResult in
            loader.hide(true)
            switch encodingResult
            {
            case .Success(let upload, _, _):
                upload.responseJSON { response in
                    debugPrint(response)
                    print("response::::::::",response)

                }
            case .Failure(let encodingError):
                print("encodingError:::::::",encodingError)
            }
        }
    )

response message is: response:::::::: FAILURE: Error Domain=NSCocoaErrorDomain Code=3840 "Invalid value around character 0." UserInfo={NSDebugDescription=Invalid value around character 0.}

1

1 Answers

0
votes

Here is some issue from server side also and i just change adding image data line and it's working fine.Server is return data non JSON format

multipartFormData.appendBodyPart(data: self.registrationNumber.dataUsingEncoding(NSUTF8StringEncoding)!, name: kRegistration_number)