Hochladen von Benutzerdateien
In der nächsten Übung werden Sie die App erweitern, um das Hochladen von Dateien zu unterstützen. Es gibt zwei Möglichkeiten, wie Sie eine Datei mittels Microsoft Graph hochladen können. Der einfachste Weg ist eine einzelne PUT-Anforderung zu verwenden mit einer Ressource wie z. B. /me/drive/root:/FolderA/FileB.txt:/content
. Diese Methode ist auf 4 MB begrenzt. Die komplexere Methode umfasst eine Reihe von HTTP-Anforderungen als eine Upload-Sitzung.
Das Microsoft Graph-SDK vereinfacht diese komplexe Methode. Das OneDriveLargeFileUploadTask
-Objekt kümmert sich um alle Details:
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();
Das Dateiargument ist ein Datei-Streamobjekt. Im Webbrowser ist es dasjenige, das vom Dateieingabeelement des Browsers zurückgegeben wird.
<input type="file" onchange="fileSelected(this);" />
Wenn der Benutzer eine Datei auswählt, kann der Ereignishandler onchange
auf die ausgewählte Datei zugreifen.
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.
}