Ejercicio: Descargar archivos de usuario

Completado

En este ejercicio, completará la funcionalidad de descarga de la aplicación para que pueda seleccionar un nombre de archivo para descargar el archivo.

  1. Agregue la siguiente función al final del archivograph.js:

    async function downloadFile(file) {
      try {
        const response = await graphClient
            .api(`/me/drive/items/${file.id}`)
            .select('@microsoft.graph.downloadUrl')
            .get();
        const downloadUrl = response["@microsoft.graph.downloadUrl"];
        window.open(downloadUrl, "_self");
      } catch (error) {
        console.error(error);
      }
    }
    
  2. En ui.js, agregue esta línea debajo de la instruccióna.href = assignment:

    a.onclick = () => { downloadFile(file); };
    

    La función de displayFiles() completada debe tener este aspecto:

    async function displayFiles() {
      const files = await getFiles();
      const ul = document.getElementById('downloadLinks');
      while (ul.firstChild) {
        ul.removeChild(ul.firstChild);
      }
      for (let file of files) {
        if (!file.folder && !file.package) {
          let a = document.createElement('a');
          a.href = '#';
          a.onclick = () => { downloadFile(file); };
          a.appendChild(document.createTextNode(file.name));
          let li = document.createElement('li');
          li.appendChild(a);
          ul.appendChild(li);
        }
      }
    }
    
  3. Ahora actualice la página. Debería poder seleccionar un archivo para descargarlo.