Esercizio - Scaricare i file utente
In questa esercitazione si completerà la funzionalità di scaricamento dell'app in modo da poter selezionare un nome file per scaricare il file.
Aggiungere la funzione seguente alla fine del file graph.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); } }
In ui.js, aggiungere questa riga subito dopo l’istruzione
a.href = assignment
:a.onclick = () => { downloadFile(file); };
La funzione
displayFiles()
completata dovrebbe avere l’aspetto seguente: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); } } }
Ora aggiornare la pagina. Si dovrebbe essere in grado di selezionare un file per scaricarlo.