Fügen Sie dem Laufwerk des Benutzers ein neues Bundle hinzu.
Berechtigungen
Eine der nachfolgenden Berechtigungen ist erforderlich, um diese API aufrufen zu können. Weitere Informationen, unter anderem zur Auswahl von Berechtigungen, finden Sie im Artikel zum Thema Berechtigungen.
Berechtigungstyp
Berechtigungen (von der Berechtigung mit den wenigsten Rechten zu der mit den meisten Rechten)
Delegiert (Geschäfts-, Schul- oder Unikonto)
Nicht unterstützt
Delegiert (persönliches Microsoft-Konto)
Files.ReadWrite, Files.ReadWrite.All
Anwendung
Nicht unterstützt
HTTP-Anforderung
POST /drive/bundles
Anforderungsheader
Name
Beschreibung
Authorization
Bearer {token}. Erforderlich.
Anforderungstext
Geben Sie im Anforderungstext eine JSON-Darstellung des zu erstellenden Bundles an.
Antwort
Wenn die Anforderung erfolgreich ist, wird das driveItem , das das neu erstellte Bundle darstellt, zurückgegeben.
Informationen zu Fehlerantworten finden Sie unter "Fehlerantworten".
Beispiele
Beispiel 1: Erstellen eines Bündels
Das folgende Beispiel zeigt, wie Sie ein einfaches neues Bündel erstellen.
Diese Anforderung erstellt ein neues Bündel mit dem Namen Just some files und fügt dem Bündel zwei vorhandene Elemente hinzu.
Dieses Bundle kann verwendet werden, um eine Sammlung von Dateien für andere Benutzer freizugeben, ohne den Ordner freizugeben, in dem diese Elemente gespeichert sind.
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var driveItem = new DriveItem
{
Name = "Just some files",
Bundle = new Bundle
{
},
Children = new DriveItemChildrenCollectionPage()
{
new DriveItem
{
Id = "1234asdf"
},
new DriveItem
{
Id = "1234qwerty"
}
},
AdditionalData = new Dictionary<string, object>()
{
{"@microsoft.graph.conflictBehavior", "rename"}
}
};
await graphClient.Drive.Bundles
.Request()
.AddAsync(driveItem);
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.New()
requestBody.SetAdditionalData(map[string]interface{}{
"name": "Just some files",
"@microsoft.graph.conflictBehavior": "rename",
"children": []Object {
}
}
graphClient.Drive().Bundles().Post(requestBody)
HTTP/1.1 201 Created
Content-Type: application/json
{
"id": "1234321!abc",
"name": "Just some files",
"bundle": {
"childCount": 2
}
}
Das hier gezeigte Antwortobjekt wird möglicherweise zur besseren Lesbarkeit verkürzt.
Beispiel 2: Erstellen eines Albums
Die Anforderung zum Erstellen eines neuen Fotoalbens ist ähnlich, obwohl die Albumeigenschaft innerhalb des Bundle-Facets auf einen Wert ungleich Null festgelegt ist.
POST https://graph.microsoft.com/beta/drive/bundles
Content-Type: application/json
{
"name": "My Day at the Beach",
"@microsoft.graph.conflictBehavior" : "rename",
"bundle": { "album": {} },
"children": [
{ "id": "1234asdf" }
]
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var driveItem = new DriveItem
{
Name = "My Day at the Beach",
Bundle = new Bundle
{
Album = new Album
{
}
},
Children = new DriveItemChildrenCollectionPage()
{
new DriveItem
{
Id = "1234asdf"
}
},
AdditionalData = new Dictionary<string, object>()
{
{"@microsoft.graph.conflictBehavior", "rename"}
}
};
await graphClient.Drive.Bundles
.Request()
.AddAsync(driveItem);
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
DriveItem driveItem = new DriveItem();
driveItem.name = "My Day at the Beach";
driveItem.additionalDataManager().put("@microsoft.graph.conflictBehavior", new JsonPrimitive("rename"));
Bundle bundle = new Bundle();
Album album = new Album();
bundle.album = album;
driveItem.bundle = bundle;
LinkedList<DriveItem> childrenList = new LinkedList<DriveItem>();
DriveItem children = new DriveItem();
children.id = "1234asdf";
childrenList.add(children);
DriveItemCollectionResponse driveItemCollectionResponse = new DriveItemCollectionResponse();
driveItemCollectionResponse.value = childrenList;
DriveItemCollectionPage driveItemCollectionPage = new DriveItemCollectionPage(driveItemCollectionResponse, null);
driveItem.children = driveItemCollectionPage;
graphClient.drive().bundles()
.buildRequest()
.post(driveItem);
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.New()
requestBody.SetAdditionalData(map[string]interface{}{
"name": "My Day at the Beach",
"@microsoft.graph.conflictBehavior": "rename",
"children": []Object {
}
}
graphClient.Drive().Bundles().Post(requestBody)
Das hier gezeigte Antwortobjekt wird möglicherweise zur besseren Lesbarkeit verkürzt.
If @microsoft.graph.conflictBehavior is set to rename and a bundle with the same name already exists, the new bundle name will be updated to be unique.
OneDrive fügt eine Zahl an das Ende des Bündelnamens an.
My Day at the Beach beispielsweise würde umbenannt in My Day at the Beach 1.
Wenn My Day at the Beach 1 sie verwendet wird, wird die Zahl erneut erhöht, bis ein eindeutiger Bündelname erkannt wird.