Как оформить POST запрос, чтобы загрузить фотографии в vk api
Я правильно оформил запрос загрузки предварительно фото, получил upload_url и теперь на него мне нужно оформить POST запрос с использованием Alamofire, документация Вконтакте гласит, что нужно - "Передайте файл на адрес upload_url, полученный в предыдущем пункте, сформировав POST-запрос с полем photo. Это поле должно содержать изображение в формате multipart/form-data" Но при загрузке фотографий он выводит в консоль лишь success(Optional(1858 bytes)), хотя должен отправить мне нормальный ответ. Подскажите пожалуйста, что я упускаю.
Ссылка на страницу документации ВК - https://vk.com/dev/upload_files
Передаю изображения вот так:
guard let image = img.jpegData(compressionQuality: 0) else { return }
VK().uploadImages(image: image)
Мои методы vk api
struct VK {
func uploadImages(image: Data?) {
AF.request("https://api.vk.com/method/photos.getWallUploadServer?group_id=2....66113&v=5.130&access_token=e10bbcbe52.....a40c5e3e8c33edc4c01a249efffc3cf14d63fa4c402bfb7e3f5d17f8aaa24")
.responseJSON { response in
switch response.result {
case .success(let value):
let json = JSON(value)
let upload_url = json["response"]["upload_url"].string!
print(upload_url)
AF.upload(
multipartFormData: { multipartFormData in
multipartFormData.append(image!, withName: "photo" , fileName: "file.jpeg", mimeType: "image/jpeg")
},
to: upload_url, method: .post)
.response { resp in
print(resp)
}
case .failure( _):
print("error")
}
}
}
}
Ответ при запуске второго метода AF.upload:
success(Optional(1858 bytes)) - вызов AF.upload, должен вернуть другое
https://pu.vk.com/c844130/ss2075/upload.php?act=do_add&mid=217881270&aid=-14&gid=202...113&hash=f4064e0528eb026f....13bae94e21d95&rhash=9b31fd41a94f663...8406adfdaba845&swfupload=1&api=1&wallphoto=1 - вызов getWallUpload, возвращает всё верно