Работаю над проектом Swift, и, очевидно, загружаемый файл не является изображением. Я также использую утилиту Alamofire.
let uuid = NSUUID().UUIDString
print ("MARK -- UUID is " + uuid)
let image = imageView.image
Alamofire.upload(.POST, "{RETRACTED}", multipartFormData: {
multipartFormData in
if let imageData = UIImageJPEGRepresentation(image!, 0.6) {
multipartFormData.appendBodyPart(data: imageData, name: uuid, fileName: uuid + ".png", mimeType: "image/png")
}
}, encodingCompletion: {
encodingResult in
switch encodingResult {
case .Success(let upload, _, _):
upload.responseJSON { response in
print(response.request) // original URL request
print(response.response) // URL response
print(response.data) // server data
print(response.result) // result of response serialization
if let JSON = response.result.value {
print ("JSON \(JSON)")
self.displayAlert("Uploaded!", message: "{RETRACTED}", responseButtonText: "{RETRACTED}")
}
}
case .Failure(let encodingError):
print(encodingError)
}
})
Вот ответ JSON (у меня также есть PHP-код на стороне сервера, если это необходимо):
JSON {
response = «Этот файл не был изображением (принимаются только изображения .png и .jpg / .jpeg). Тип» «;
responseCode = 0;
}
Спасибо, парни.
Вы отправляете изображение в формате jpg, но указываете тип mime для png. Измените тип MIME на «изображение / JPEG» или отправить файл PNG.
Других решений пока нет …