Bonjour,
Pour l’un de mes formulaires, j’ai besoin de pouvoir télécharger des fichiers pour les afficher ensuite, je passe donc par le protocole de l’API prévu à cet effet :
uploadFile(List<int> fileBytes, String filename, String? contentType) async {
print("contentType = $contentType");
final result = await _apiManager.uploadFile(
fileBytes: fileBytes, filename: filename, contentType: contentType);
//print(result.getDownloadURL());
}
Mais, comme vu dans le coaching de groupe (avril 2023), il est nécessaire de préciser le contentType sans quoi nous téléchargeons juste un binaire.
Ainsi, si mon content type représente bien l’extension, Flutter me renvoie une erreur :
Error: Error on line 1, column 4: Invalid media type: expected "/".
Savez-vous de quoi il s’agit ?
Surtout qu’il n’y a pas vraiment d’indice dans l’API :
@override
Future<DirectusFile> uploadFile(
{required List<int> fileBytes,
required String filename,
String? title,
String? contentType,
String? folder}) {
return _sendRequest(
prepareRequest: () => _api.prepareNewFileUploadRequest(
fileBytes: fileBytes,
filename: filename,
title: title,
contentType: contentType,
folder: folder),
parseResponse: (response) => _api.parseFileUploadResponse(response));
}