Je travaille sur une application Flutter, dans laquelle je télécharge un fichier image (requête PUT) vers AWS S3 en utilisant une URL prédéfinie. Le téléchargement est réussi et je peux voir le fichier dans S3. Mais lorsque je clique et que je le télécharge depuis le bucket, le fichier téléchargé est corrompu.
J'utilise la bibliothèque Dio pour télécharger le fichier. Le téléchargement du fichier image en tant que binaire via postman fonctionne parfaitement.
uploadFileToPresignedS3(
File payload, String fileName, String presignedURL) async {
try {
Dio dio = new Dio();
FormData formData = new FormData.from(
{"name": fileName, "file1": new UploadFileInfo(payload, fileName)});
dio.put(presignedURL, data: formData);
} catch (ex) {
print(ex);
}
}
Attendu : le fichier téléchargé ne soit pas corrompu
Résultat réel : Le fichier téléchargé est corrompu