i'm using the UIImagePickerController
to take photo and im converting image to base64 and i want to send image to my server but the photo was converting to base64 but the problem is i can't send the converted photo to my server in paramenter
here my code
@IBOutlet weak var CameraOutlet: UIButton!
@IBOutlet weak var Complaint_Image1: UIImageView!
@IBOutlet weak var Complaint_Image2: UIImageView!
@IBOutlet weak var Complaint_Image3: UIImageView!
func TakePhotos() {
let Image = UIImagePickerController()
Image.allowsEditing = true
Image.sourceType = UIImagePickerControllerSourceType.camera
Image.delegate = self
present(Image, animated: true, completion: nil)
}
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
if let picture = info[UIImagePickerControllerOriginalImage] as? UIImage {
if (Complaint_Image1.image != nil && Complaint_Image2.image != nil) {
Complaint_Image3.image = picture
}
else if Complaint_Image1.image != nil {
Complaint_Image2.image = picture
}
else {
Complaint_Image1.image = picture
}
}
if Complaint_Image1.image != nil {
let imageData:NSData = UIImagePNGRepresentation(Complaint_Image1.image!)! as NSData
let imageStr = imageData.base64EncodedString(options: NSData.Base64EncodingOptions(rawValue: 0))
let imageBase64 = imageStr
let imgstr2 = String.init(format: "data:image/png;base64,%@", imageBase64)
UserDefaults.standard.set(imgstr2, forKey: "image")
UserDefaults.standard.synchronize()
}
let picture1 = UserDefaults.standard.object(forKey: "image")
let parameter = ["Image1": picture1!,"Image":[["name": picture2],["name": picture3]] as [String: Any]
}