Retrouver le nom de fichiers téléchargés
Bonjour à toutes et à tous,
J'ai récupéré le contenu d'un fonction de téléchargement de fichier et je l'utilise pour télécharger plusieurs fichiers à le suite. Cette fonction est la suivante :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| async function chgtHistos() {
for (let i = 0; i < 7; i++) {
fetch('/quelFichier?val='+i)
.then(response => response.blob())
.then(blob => {
const url = window.URL.createObjectURL(blob);
const a = document.createElement('a');
a.style.display = 'none';
a.href = url;
a.download = 'fichier_telecharge.txt';
document.body.appendChild(a);
a.click();
window.URL.revokeObjectURL(url);
})
.catch(error => console.error('Erreur lors du téléchargement:', error));
}
} |
elle appelle :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| server.on("/quelFichier", HTTP_GET, [](AsyncWebServerRequest *request){
if (request->hasParam("val")) {
File root = LittleFS.open("/");
File file = root.openNextFile();
noFch = request->getParam("val")->value().toInt();
bool vu = false;
while(file) {
if (strncmp(file.path(), nomJour[noFch], 4) == 0) {
vu = true;
Serial.println(file.path());
request->send(LittleFS, file.path(), String(), true); // Envoie le fichier en téléchargement
}
if (vu == true)
break;
else
file = root.openNextFile();
}
}
});
} |
Le téléchargement de chacun des fichiers se passe bien à ceci près que leur nom est celui donné dans la ligne : a.download = 'fichier_telecharge.txt';Y a-t-il un moyen de récupérer le vrai nom de chaque fichier ?
Cordialement.
Pierre.