Caricamento dei file degli utenti
Nell'esercizio successivo si estenderà l'app in modo da supportare i caricamenti di file. Sono disponibili due soluzioni per caricare un file usando Microsoft Graph. Il modo più semplice consiste nell'usare una singola richiesta PUT con una risorsa, ad esempio /me/drive/root:/FolderA/FileB.txt:/content
. Questo metodo è limitato a 4 MB. Il metodo più complesso prevede una serie di richieste HTTP sotto forma di sessione di caricamento.
Microsoft Graph SDK semplifica questo metodo complesso. L'oggetto OneDriveLargeFileUploadTask
gestisce tutti i dettagli:
const uploadTask = await MicrosoftGraph.OneDriveLargeFileUploadTask.create(
graphClient, file, {
path: "/",
fileName: file.name,
rangeSize: 1024 * 1024 // must be a multiple of 320 KiB
}
);
const response = await uploadTask.upload();
L'argomento file è un oggetto flusso di file. Nel Web browser è quello restituito dall'elemento di input del file del browser.
<input type="file" onchange="fileSelected(this);" />
Quando l'utente seleziona un file, il gestore dell'evento onchange
può accedere al file selezionato.
function fileSelected(e) {
// Add your code here; e.files[0] contains the file stream to upload the
// 1st file selected by the user; e.files[1] if a 2nd file was uploaded etc.
}