Hochladen von Feedbackdateien für Bildungseinrichtungen 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 Feedbackressourcenordner hochgeladen werden sollen.
In diesem Artikel wird beschrieben, wie Sie die Education-API in Microsoft Graph verwenden, um Dateien in einen Ordner mit Feedbackressourcen hochzuladen.
Voraussetzungen
Bevor Sie Dateien hochladen können, richten Sie einen SharePoint-Ordner ein, in den die Dateien für eine bestimmte Bildungszuweisung oder Übermittlungsressource hochgeladen werden sollen.
Hochladen einer Ressource
Die setUpFeedbackResourcesFolder-API für die Übermittlung 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 zum Hochladen von Inhalten im folgenden format: {resourcesFolderUrl}:/{Name of new file}:/content
. 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 FileUrl-Eigenschaft
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 educationFeedbackResourceOutcome
In diesem Schritt wird gezeigt, wie Sie eine SharePoint-Ressource in einen Feedbackressourcenordner hochladen.
Verwenden Sie die fileUrl
aus dem vorherigen Schritt im Anforderungstext, um ein educationFeedbackResourceOutcome zu erstellen.
Anforderung
Das folgende Beispiel zeigt die Antwort.
POST https://graph.microsoft.com/beta/education/classes/37d99af7-cfc5-4e3b-8566-f7d40e4a2070/assignments/a3cce0ba-2008-4c4d-bf62-079408562d96/submissions/2185e6d7-2924-4ed1-dde1-269f89e29184/outcomes
Content-type: application/json
{
"@odata.type": "#microsoft.graph.educationFeedbackResourceOutcome",
"feedbackResource": {
"@odata.type": "#microsoft.graph.educationWordResource",
"displayName": "Document1.docx"
}
}
Antwort
Das folgende Beispiel zeigt die Antwort.
HTTP/1.1 201 Created
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/education/classes('37d99af7-cfc5-4e3b-8566-f7d40e4a2070')/assignments('a3cce0ba-2008-4c4d-bf62-079408562d96')/submissions('2185e6d7-2924-4ed1-dde1-269f89e29184')/outcomes/$entity",
"@odata.type": "#microsoft.graph.educationFeedbackResourceOutcome",
"lastModifiedDateTime": "2022-05-06T00:50:30.0772434Z",
"id": "ba12f282-2190-4958-80b3-42b8afb9626a",
"resourceStatus": "notPublished",
"lastModifiedBy": {
"application": null,
"device": null,
"user": {
"id": "cb1a4af3-0aba-4679-aa12-9f99bab0b61a",
"displayName": null
}
},
"feedbackResource": {
"@odata.type": "#microsoft.graph.educationWordResource",
"displayName": "Document1.docx",
"createdDateTime": "2022-05-06T00:50:30.0772177Z",
"lastModifiedDateTime": "2022-05-06T00:50:30.0772434Z",
"fileUrl": "https://graph.microsoft.com/beta/drives/b!-Ik2sRPLDEWy_bR8l75jfeDcpXQcRKVOmcml10NQLQ1F8CNZWU38SarWxPyWM7jx/items/01VANVJQZQ33I4AJBSURHZJDDQKEJ5TEMJ",
"createdBy": {
"application": null,
"device": null,
"user": {
"id": "cb1a4af3-0aba-4679-aa12-9f99bab0b61a",
"displayName": null
}
},
"lastModifiedBy": {
"application": null,
"device": null,
"user": {
"id": "cb1a4af3-0aba-4679-aa12-9f99bab0b61a",
"displayName": null
}
}
}
}
Sie haben nun erfolgreich eine Ressource in einen Feedbackressourcenordner hochgeladen (und sie an die zugeordnete Übermittlung angefügt). Sie können ähnliche Schritte ausführen, um eine oder mehrere Feedbackressourcen hochzuladen.
Weitere Informationen finden Sie unter Erstellen von educationFeedbackResourceOutcome.