Hochladen von Dateien für Bildungsaufgaben und -übermittlungen mithilfe des Microsoft-Graph-API
Ressourcen sind ein integraler Bestandteil von Bildungszuweisungen und -übermittlungen. Lehrkräfte bestimmen die Ressourcen, die in einen Aufgabenordner hochgeladen werden sollen, und die Kursteilnehmer bestimmen die Ressourcen, die in einen Übermittlungsordner hochgeladen werden sollen.
In diesem Artikel wird beschrieben, wie Sie die Education-API in Microsoft Graph verwenden, um Dateien in einen Zuordnungs- oder Übermittlungsordner hochzuladen.
Voraussetzungen
Bevor Sie Dateien hochladen können, richten Sie einen SharePoint-Ordner ein, in den die Dateien für eine bestimmte Bildungsaufgabe oder Übermittlungsressource hochgeladen werden sollen.
Hochladen einer Ressource
Die setUpResourcesFolder
API gibt ein Modell zurück, das die eigenschaft resourcesFolderUrl enthält.
{
...
"resourcesFolderUrl": "https://graph.microsoft.com/v1.0/drives/b!6SQl0y4WHkS2P5MeIsSGpKwfynEIaD1OvPVeH4wbOp_1uyhNwJMSSpseJneB7Z4F/items/01YT2AIJRQLVYT24IWWFAJHMRRNYCB3GFA"
...
}
In den folgenden Schritten wird beschrieben, wie Sie eine Ressource/Datei in einen relevanten Ressourcenordner hochladen.
Schritt 1: Erstellen der Upload-URL
Erstellen Sie die URL, um Inhalte in diesem bestimmten Format {resourcesFolderUrl}:/{Name of new file}:/content
hochzuladen. Das folgende Beispiel zeigt eine Upload-URL, die die resourcesFolderUrl-Eigenschaft enthält.
https://graph.microsoft.com/v1.0/drives/b!6SQl0y4WHkS2P5MeIsSGpKwfynEIaD1OvPVeH4wbOp_1uyhNwJMSSpseJneB7Z4F/items/01YT2AIJRQLVYT24IWWFAJHMRRNYCB3GE2:/MyPictureFile.png:/content
Schritt 2: Hochladen der Ressource in SharePoint
Stellen Sie eine PUT-Anforderung mit der Upload-URL, um den Inhalt hochzuladen.
Der Inhalt des Anforderungstexts sollte den binären Stream der hochzuladenden Datei sein.
Weitere Informationen finden Sie unter Hochladen großer Dateien mit einer Uploadsitzung.
Anforderung
Das folgende Beispiel zeigt die Antwort.
PUT https://graph.microsoft.com/v1.0/drives/b!6SQl0y4WHkS2P5MeIsSGpKwfynEIaD1OvPVeH4wbOp_1uyhNwJMSSpseJneB7Z4F/items/01YT2AIJRQLVYT24IWWFAJHMRRNYCB3GE2:/MyPictureFile.png:/content
Content-Type: text/plain
Binary data for the file
Antwort
Das folgende Beispiel zeigt die Antwort.
HTTP/1.1 201 Created
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#drives('b%216SQl0y4WHkS2P5MeIsSGpKwfynEIaD1OvPVeH4wbOp_1uyhNwJMSSpseJneB7Z4F')/items/$entity",
"@microsoft.graph.downloadUrl": "...",
"createdDateTime": "2021-03-11T18:49:47Z",
"eTag": "\"{EDD00CE7-B74C-4C3E-BA3E-484CB41EF31D},1\"",
"id": "01YT2AIJU7DAXTU6XLOJGYWYMTGM5JT5UQ",
"lastModifiedDateTime": "2021-03-11T18:49:47Z",
"name": "MyPictureFile.png",
"webUrl": "https://contososdorg.sharepoint.com/sites/GraphTest/Class%20Files/Assignments/Test%20File%20Distribution/MyPictureFile.png",
"cTag": "\"c:{EDD00CE7-B74C-4C3E-BA3E-484CB41EF31D},2\"",
"size": 2302233,
"createdBy": {
"application": null,
"device": null,
"user": {
"email": "t-james@contososd.org",
"id": "42ff222c-571f-497c-a9d3-f77ea9ece327",
"displayName": "James"
}
},
"lastModifiedBy": {
"application": null,
"device": null,
"user": {
"email": "t-james@contososd.org",
"id": "42ff222c-571f-497c-a9d3-f77ea9ece327",
"displayName": "James"
}
},
"parentReference": {
"driveId": "b!6SQl0y4WHkS2P5MeIsSGpKwfynEIaD1OvPVeH4wbOp_1uyhNwJMSSpseJneB7Z4F",
"driveType": "documentLibrary",
"id": "01YT2AIJRQLVYT24IWWFAJHMRRNYCB3GE2",
"path": "/drives/b!6SQl0y4WHkS2P5MeIsSGpKwfynEIaD1OvPVeH4wbOp_1uyhNwJMSSpseJneB7Z4F/root:/Assignments/Test File Distribution"
},
"file": {
"mimeType": "image/png",
"hashes": {
"quickXorHash": "CvYQxN7MCGrIsdrA38c6wWhOu5g="
}
},
"fileSystemInfo": {
"createdDateTime": "2021-03-11T18:49:47Z",
"lastModifiedDateTime": "2021-03-11T18:49:47Z"
},
"image": {}
}
Schritt 3: Erstellen des Werts für die eigenschaft fileUrl
Erstellen Sie den Wert für die fileUrl-Eigenschaft im folgenden Format: https://graph.microsoft.com/v1.0/drives/{drive-id}/items/{item-id}
. Ersetzen Sie die {drive-id}
Platzhalter und {item-id}
durch die in der folgenden Tabelle beschriebenen Werte.
Platzhalter | Beschreibung | Beispiel |
---|---|---|
{drive-id} |
Die Laufwerks-ID aus der anforderungs-URL, die in Schritt 2 verwendet wurde. | b!6SQl0y4WHkS2P5MeIsSGpKwfynEIaD1OvPVeH4wbOp_1uyhNwJMSSpseJneB7Z4F |
{item-id} |
Element-ID aus dem Antworttext, der in Schritt 2 abgerufen wurde. | 01YT2AIJU7DAXTU6XLOJGYWYMTGM5JT5UQ |
Das folgende Beispiel zeigt eine fileUrl , die auf diesem Format basiert.
https://graph.microsoft.com/v1.0/drives/b!6SQl0y4WHkS2P5MeIsSGpKwfynEIaD1OvPVeH4wbOp_1uyhNwJMSSpseJneB7Z4F/items/01YT2AIJU7DAXTU6XLOJGYWYMTGM5JT5UQ
Schritt 4: Erstellen von educationAssignmentResource
In diesem Schritt wird gezeigt, wie Sie eine SharePoint-Ressource in einen Zuordnungsressourcenordner hochladen.
Verwenden Sie den fileUrl
aus dem vorherigen Schritt im Anforderungstext, um educationAssignmentResource zu erstellen.
Anforderung
Das folgende Beispiel zeigt die Antwort.
POST https://graph.microsoft.com/v1.0/education/classes/b07edbef-7420-4b3d-8f7c-d599cf21e069/assignments/48b80dff-452a-4108-bd85-fa0d84e39d0a/resources
Content-type: application/json
{
"resource": {
"@odata.type": "#microsoft.graph.educationFileResource",
"fileUrl": "https://graph.microsoft.com/v1.0/drives/b!6SQl0y4WHkS2P5MeIsSGpKwfynEIaD1OvPVeH4wbOp_1uyhNwJMSSpseJneB7Z4F/items/01YT2AIJU7DAXTU6XLOJGYWYMTGM5JT5UQ",
"displayName": "Parts of a Sonnet"
}
}
Antwort
Das folgende Beispiel zeigt die Antwort.
HTTP/1.1 201 Created
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#education/classes('b07edbef-7420-4b3d-8f7c-d599cf21e069')/assignments('48b80dff-452a-4108-bd85-fa0d84e39d0a')/resources/$entity",
"distributeForStudentWork": false,
"id": "ff1aafe4-ae89-49c3-8366-4b509f640d6a",
"resource": {
"@odata.type": "#microsoft.graph.educationFileResource",
"displayName": "Parts of a Sonnet",
"createdDateTime": "2021-03-11T18:35:40.6642039Z",
"lastModifiedDateTime": "2021-03-11T18:35:40.6642039Z",
"fileUrl": "https://graph.microsoft.com/v1.0/drives/b!6SQl0y4WHkS2P5MeIsSGpKwfynEIaD1OvPVeH4wbOp_1uyhNwJMSSpseJneB7Z4F/items/01YT2AIJU7DAXTU6XLOJGYWYMTGM5JT5UQ",
"createdBy": {
"application": null,
"device": null,
"user": {
"id": "42ff222c-571f-497c-a9d3-f77ea9ece327",
"displayName": null
}
},
"lastModifiedBy": {
"application": null,
"device": null,
"user": {
"id": "42ff222c-571f-497c-a9d3-f77ea9ece327",
"displayName": null
}
}
}
}
Sie haben nun erfolgreich eine SharePoint-Ressource in einen Zuordnungsressourcenordner hochgeladen (und an die zugeordnete Zuweisung angefügt). Sie können ähnliche Schritte ausführen, um eine oder mehrere Arbeitsressourcen für Kursteilnehmer hochzuladen.
Weitere Informationen finden Sie unter Erstellen von educationSubmissionResource.