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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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.