Estou carregando os vídeos e imagens no bucket do S3 por meio da solicitação de postagem no serviço s3 (sem usar o AWS SDK). As imagens e vídeos foram enviados com sucesso. Mas o vídeo não está sendo reproduzido pelo URL.
Abaixo está o erro impresso no console:
Domínio de erro = Código NSURLErrorDomain = -999 "cancelado" UserInfo = {NSErrorFailingURLStringKey = https: // s3url }
A seguir, está o código da solicitação de várias partes que estou usando:
Alamofire.upload(multipartFormData: { (multiPart) in
if parameters != nil {
for (key, value) in parameters! {
multiPart.append((value as AnyObject).data(using: String.Encoding.utf8.rawValue)!, withName: key)
}
}
print("mime type ==================>\(mimeType)")
//mime type for video: "video/mp4"
multiPart.append(file, withName: key, fileName: fileName, mimeType: mimeType)
}, usingThreshold: 10000, to: url, method: .post, headers: headers) { (encodingResult) in
switch encodingResult {
case .success(let upload, _, _):
upload.responseString(completionHandler: { (response) in
print("response string")
print(response)
})
upload.responseJSON { response in
print(response)
print(response.result.isSuccess)
}
case .failure(let error):
failure(self.parseError(error: error))
break
}
}
Respostas:
O motivo disso foi que, durante o upload do vídeo, o Tipo de Conteúdo do vídeo não estava sendo definido devido ao qual o vídeo não estava sendo reproduzido. Definindo o Tipo de Conteúdo nos dados do formulário e na Política, o vídeo foi carregado e reproduzido com êxito.
fonte