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.