Hello i am new to swift4 and trying to call multipart form data request by alamofire library in swift4 language? here below is my code
Alamofire.upload(multipartFormData: { multipartFormData in
multipartFormData.append("1422".data(using: String.Encoding.utf8)!, withName: "u_id")
multipartFormData.append("How???".data(using: String.Encoding.utf8)!, withName: "firstname")
multipartFormData.append("We are woking on it!!".data(using: String.Encoding.utf8)!, withName: "description")
}, to: "URL_TOcall", encodingCompletion: { result in
print("result = \(result)")
switch result {
case .success(request: let request, streamingFromDisk: false, streamFileURL: nil):
//Success code
break
case .failure:
print("failed api calling")
break
case .success(let request, true, _):
//Code here
break
case .success(let request, _, _):
// Code here
break
}
})
}
I have solved my issue it was too silly and small thing that i was not doing but after adding allowLossyConversion: false to my string conversion just did the trick.
{
//corrected indentation for code
Alamofire.upload(multipartFormData: { multipartFormData in
multipartFormData.append("1422".data(using: String.Encoding.utf8, allowLossyConversion: false)!, withName: "u_id")
multipartFormData.append("How???".data(using: String.Encoding.utf8, allowLossyConversion: false)!, withName: "firstname")
multipartFormData.append("We are woking on it!!".data(using: String.Encoding.utf8, allowLossyConversion: false)!, withName: "description")
}, to: "URL_TOcall", encodingCompletion: { result in
print("result = \(result)")
switch result {
case .success(request: let request, streamingFromDisk: false, streamFileURL: nil):
//Success code
break
case .failure:
print("failed api calling")
break
case .success(let request, true, _):
//Code here
break
case .success(let request, _, _):
// Code here
break
}
})
}