Ejercicio: Descargar archivos de usuario
En este ejercicio, completará la funcionalidad de descarga de la aplicación para que pueda seleccionar un nombre de archivo para descargar el archivo.
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); } }
En ui.js, agregue esta línea debajo de la instrucción
a.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); } } }
Ahora actualice la página. Debería poder seleccionar un archivo para descargarlo.