Упражнение. Скачивание пользовательских файлов
В этом упражнении вы добавите в приложение функцию скачивания, чтобы можно было выбирать имя файла, который необходимо скачать.
Добавьте указанную ниже функцию в конец файла 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); } }
В файле ui.js, добавьте следующую строку сразу после оператора
a.href = assignment
:a.onclick = () => { downloadFile(file); };
Готовая функция
displayFiles()
должна выглядеть следующим образом: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); } } }
Обновите страницу. Теперь должна появиться возможность выбрать файл, чтобы скачать его.