Я использую Alamofire 4 with swift 3
для обновления профиля пользователя. а также я использую класс Router
. Мне нужно uplaod
и изображение с другими параметрами. Я могу update
подробно пользователей, не загружая часть изображения.Как загрузить изображение в качестве параметра, с другими параметрами, используя данные о multipart form в ios, swift3, Alamofire 4
это то, что он выглядит в postman
так возможно создать urlconvertible запрос для этого. как я могу загрузить изображение с другими параметрами. (это прекрасно работает в почтальоне). как я могу это сделать с новыми Alamofire
. Я попробовал это, как показано ниже.
let parameters = [
"profile_image": "swift_file.jpeg"
]
Alamofire.upload(multipartFormData: { (multipartFormData) in
multipartFormData.append(UIImageJPEGRepresentation(profileImage, 1)!, withName: "file", fileName: "swift_file.jpeg", mimeType: "image/png")
for (key, value) in parameters {
multipartFormData.append(value.data(using: String.Encoding.utf8)!, withName: key)
}
}, to:urltoUpdate)
{ (result) in
switch result {
case .success(let upload, _, _):
print("the status code is :")
upload.uploadProgress(closure: { (progress) in
print("something")
})
upload.responseJSON { response in
print("the resopnse code is : \(response.response?.statusCode)")
print("the response is : \(response)")
}
break
case .failure(let encodingError):
print("the error is : \(encodingError.localizedDescription)")
break
}
}
но это не работает должным образом. надеюсь, ваша помощь с этой частью.
И я также сомневаюсь в 'mimeType:" image/png "', потому что вы отправляете изображение в формате JPEG. –
, так как я могу загрузить другие параметры с помощью этого 'firstname, latname, например' –
Обновленный код 'for (key, value) в параметрах {' loop уже привязывает параметры с телом запроса. –