Mehrteiliger Upload nach OneDrive mithilfe von POST
Die Methode des mehrteiligen Uploads ermöglicht es Ihnen, Metadaten zu einem Element und den Inhalt des Elements in einem einzigen API-Aufruf bereitzustellen. Diese Methode unterstützt nur Anforderungen mit einer Größe von maximal 4 MB.
Hinweis: Der mehrteilige Upload steht nur im persönlichen OneDrive zur Verfügung.
Informationen zum Hochladen großer Dateien finden Sie unter Große Dateien mit einer Uploadsitzung hochladen.
Berechtigungen
Eine der folgenden Berechtigungen ist erforderlich, um diese API aufzurufen. Weitere Informationen, unter anderem zur Auswahl von Berechtigungen, finden Sie unter Berechtigungen.
Berechtigungstyp | Berechtigungen (von der Berechtigung mit den wenigsten Rechten zu der mit den meisten Rechten) |
---|---|
Delegiert (Geschäfts-, Schul- oder Unikonto) | N/V |
Delegiert (persönliches Microsoft-Konto) | Files.ReadWrite, Files.ReadWrite.All |
Anwendung | N/V |
HTTP-Anforderung
POST /me/drive/items/{item-id}/children
POST /me/drive/root:/{item-path}/:children
Anforderungstext (mehrteiliger Upload von Inhalt und Metadaten)
Der mehrteilige Textkörper legt Metadaten für die Datei sowie gleichzeitig den Inhalt der Datei fest.
Der Dienst erkennt dieses Szenario, wenn der Header Content-Type: multipart/related
in der Anforderung enthalten ist.
Weitere Informationen zur multipart/related-Codierung finden Sie im RFC 2387 zum Inhaltstyp „multipart/related“.
Das hochgeladene Dokument muss genau zwei Teile enthalten:
Name | Typ | Beschreibung |
---|---|---|
metadata | application/json | Die beim Erstellen des Elements zu verwendenden Metadatenwerte. |
content | Binär | Der binäre Inhalt des erstellten Elements. |
Wenn mehr als zwei Teile enthalten sind, wird die Anforderung abgelehnt.
Jedes Teil muss einen name-Wert im Content-Disposition
-Header enthalten, der angibt, um welches Teil es sich handelt.
Die Reihenfolge der Teile ist beliebig, allerdings wird empfohlen, den Metadatenteil zuerst anzugeben.
POST /drive/items/{folder-id}/children
Content-Type: multipart/related; boundary="A100x"
--A100x
Content-ID: <metadata>
Content-Type: application/json
{
"name": "newfile.txt",
"file": {},
"@microsoft.graph.sourceUrl": "cid:content",
"@microsoft.graph.conflictBehavior": "rename"
}
--A100x
Content-ID: <content>
Content-Type: text/plain
Contents of the file to be uploaded.
--A100x--
Hinweis: Sie können ein Instanzattribut für die Elementmetadaten verwenden, um zu steuern, was beim Hochladen einer Datei passiert, deren Name dem einer vorhandenen Datei entspricht. Standardmäßig tritt beim Hochladen ein Fehler auf, wenn ein vorhandenes Element den gleichen Namen hat.
Antwort
Wenn die Methode erfolgreich verläuft, wird eine driveItem-Ressource im Antworttext der neu erstellten Datei zurückgegeben.
HTTP/1.1 201 Created
Content-Type: application/json
{
"id": "0123456789abc",
"name": "newfile.txt",
"file": { }
}
Fehlerantworten
Weitere Informationen dazu, wie Fehler zurückgegeben werden, finden Sie im Thema Fehlerantworten.
Bemerkungen
Die Methode des mehrteiligen Uploads wird in OneDrive for Business, SharePoint Online und SharePoint Server 2016 nicht unterstützt.