Accéder, stocker et récupérer des fichiers dans SharePoint Embedded avec Microsoft Graph
Dans cet exercice, vous allez utiliser Postman pour accéder, stocker et récupérer des fichiers et des documents dans un conteneur SharePoint Embedded à l’aide du client Postman.
Configuration requise
- Postman a installé le client de bureau connecté à un compte Postman gratuit ou payant.
- Accès à un compte administrateur dans un locataire Microsoft 365.
Importante
À l’heure actuelle, la plupart des points de terminaison Microsoft Graph utilisés pour créer, accéder et gérer des ressources spécifiques à SharePoint Embedded existent uniquement sur le point de terminaison bêta de Microsoft Graph. Toutefois, tous les points de terminaison qui accèdent aux conteneurs et au contenu dans contient se trouvent sur le point de terminaison Microsoft Graph v1.0.
Configurer le dossier Délégué de la collection Postman
La première étape consiste à configurer le dossier Délégué dans la collection Postman que vous avez créée précédemment pour obtenir un jeton d’accès utilisateur+application, également appelé jeton d’accès délégué , afin que nous puissions effectuer des appels à l’application.
Dans le client Postman, sélectionnez votre collection SharePoint Embedded, sélectionnez le dossier Délégué , puis sélectionnez l’onglet Autorisation . Configurez les paramètres suivants (ignorez les champs non mentionnés dans la liste suivante) :
- Type: OAuth 2.0
- Ajouter des données d’authentification à : En-têtes de requête
-
Jeton actuel :
- Jeton : Jetons disponibles
- Préfixe d’en-tête : porteur
-
Configurer un nouveau jeton
- Nom du jeton : Application Graph+Jeton utilisateur
- Type d’autorisation: code d’autorisation
-
URL de rappel :
https://oauth.pstmn.io/v1/browser-callback
-
Auth URL (URL d’authentification) :
https://login.microsoftonline.com/common/oauth2/v2.0/authorize
-
URL du jeton d’accès :
https://login.microsoftonline.com/common/oauth2/v2.0/token
-
ID client :
{{ClientID}}
-
Clé secrète client :
{{ClientSecret}}
-
Étendue :
FileStorageContainer.Selected offline_access
Sélectionnez le bouton Obtenir un nouveau jeton d’accès en bas du formulaire. Cela déclenche une fenêtre contextuelle contenant la page de connexion de l’ID Microsoft Entra. Connectez-vous à l’aide du compte d’administrateur professionnel et scolaire de votre locataire Microsoft 365 et, si vous êtes invité à accorder votre consentement aux autorisations demandées, sélectionnez Accepter. Lorsque la fenêtre contextuelle se ferme, Postman a reçu le jeton et l’affiche dans une fenêtre contextuelle de confirmation. Sélectionnez Utiliser le jeton pour l’enregistrer pour les demandes ultérieures.
Remarque
En ajoutant l’étendue offline_access
, l’ID Microsoft Entra répond avec un jeton d’actualisation afin que Postman puisse non seulement stocker le jeton d’accès localement sur votre station de travail, mais il peut actualiser automatiquement le jeton s’il expire la prochaine fois que vous l’utiliserez.
Dans le volet Collection, sélectionnez le dossier Conteneur délégué>, puis sélectionnez l’onglet Autorisation. Définissez le Type sur Hériter de l’authentification du parent.
Utiliser l’API REST Microsoft Graph pour répertorier tous les conteneurs
Maintenant que les dossiers Délégué et Conteneur de la collection Postman sont configurés, ajoutez une nouvelle requête pour obtenir la liste de tous les conteneurs.
Créez une demande en sélectionnant le lien Ajouter une demande dans le dossier Conteneur délégué > vide, ou en sélectionnant le bouton ... > Ajoutez une requête à partir du menu contextuel lorsque vous pointez la souris sur le dossier Conteneur délégué > et que vous définissez les valeurs suivantes sur la nouvelle demande :
- Nom : Lister les conteneurs
- Méthode HTTP : GET
-
Point de terminaison HTTP :
https://graph.microsoft.com/beta/storage/fileStorage/containers?$filter=containerTypeId eq {{ContainerTypeId}}
Sélectionnez Envoyer pour exécuter la demande. Vous devriez voir une réponse valide de zéro conteneur trouvé.
Utiliser l’API REST Microsoft Graph pour créer un conteneur
Créons notre premier conteneur à l’aide de l’API REST Microsoft Graph.
Créez une demande à l’aide des valeurs suivantes :
Nom : Créer un conteneur
Méthode HTTP : POST
Point de terminaison HTTP :
https://graph.microsoft.com/beta/storage/fileStorage/containers
Corps : JSON brut >
{ "displayName": "Sample App Container 1", "description": "First container description.", "containerTypeId": "{{ContainerTypeId}}" }
Exécutez la requête en sélectionnant Envoyer.
Microsoft Graph répondra avec un code HTTP 201 en cas de réussite avec un résumé des détails du nouveau conteneur :
Maintenant, si vous réexécutez la requête List Containers , vous verrez qu’elle retourne maintenant le conteneur que vous avez créé.
Stockons l’ID du conteneur pour une utilisation ultérieure.
Sélectionnez la valeur de la propriété de id
la réponse, sélectionnez-la avec le bouton droit, puis sélectionnez la propriété ContainerID de votre environnement.
Utiliser l’API REST Microsoft Graph pour obtenir les détails d’un conteneur spécifique
Ensuite, créez une demande pour obtenir un conteneur unique à l’aide de l’API REST Microsoft Graph.
Revenez à votre collection SharePoint Embedded, revenez au dossier Conteneur délégué>, puis créez une requête à l’aide des valeurs suivantes :
Nom : Obtenir le conteneur
Méthode HTTP : GET
Point de terminaison HTTP :
https://graph.microsoft.com/beta/storage/fileStorage/containers/{{ContainerID}}?$select=id,displayName,containerTypeId,status,description,customProperties&$expand=permissions
Exécutez la requête en sélectionnant Envoyer. Microsoft Graph répondra avec les détails du conteneur.
Ajouter des fichiers à un conteneur existant
Tous les conteneurs dans SharePoint Embedded peuvent être traités comme un objet Lecteur Microsoft Graph qui sera familier aux développeurs habitués à utiliser les points de terminaison OneDrive dans Microsoft Graph. Cela signifie que vous pouvez utiliser tous les points de terminaison et le code Drive existants que vous avez créés précédemment pour gérer le contenu dans un objet Drive afin de gérer le contenu dans les conteneurs SharePoint Embedded.
Accéder à un conteneur en tant qu’objet Drive
Créez un dossier Fichiers dans le dossier Délégué de votre collection Postman.
Ensuite, créez une requête dans le dossier Fichiers délégués > à l’aide des valeurs suivantes :
- Nom : Obtenir le lecteur
- Méthode HTTP : GET
-
Point de terminaison HTTP :
https://graph.microsoft.com/v1.0/drives/{{ContainerID}}
Répétez le processus pour obtenir la liste de tous les fichiers, également appelés DriveItems, dans l’objet Drive à l’aide du point de items
terminaison :
- Nom : Get DriveItems
- Méthode HTTP : GET
-
Point de terminaison HTTP :
https://graph.microsoft.com/v1.0/drives/{{ContainedID}}/items/root/children
Exécutez la requête en sélectionnant Envoyer. Microsoft Graph répondra avec le contenu du conteneur SharePoint Embedded :
Charger un fichier dans le conteneur
Avec notre conteneur créé et la possibilité de voir les fichiers dans un conteneur à l’aide des points de terminaison Lecteur Microsoft Graph et DriveItems existants, nous allons ajouter un fichier au conteneur.
Créez un document Microsoft Word. Dans cet exemple, nous allons utiliser un document pour un calendrier modifiable pour janvier 2024 créé à partir de l’un des modèles Microsoft Word inclus. Dans cet exemple, le fichier est appelé Jan2024.docx.
Créez une requête dans le dossier Fichiers délégués > à l’aide des valeurs suivantes :
- Nom : Charger un fichier
- Méthode HTTP : PUT
-
Point de terminaison HTTP :
https://graph.microsoft.com/v1.0/drives/{{ContainerId}}/root:/Jan2024.docx:/content
- Corps:
- Type : binary
- Sélectionnez le fichier Microsoft Word (Jan2024.docx dans cet exemple)
Remarque
Mettez à jour le point de terminaison pour utiliser le nom du fichier que vous souhaitez créer dans votre conteneur. Dans cet exemple, nous utilisons Jan2024.docx.
Sélectionnez Envoyer pour charger le fichier :
Réexécutez la requête Get DriveItems pour voir le fichier dans le conteneur :
Résumé
Dans cet exercice, vous avez utilisé Postman pour accéder, stocker et récupérer des fichiers et des documents dans un conteneur SharePoint Embedded à l’aide du client Postman en appelant les API REST Microsoft Graph avec un jeton d’accès application+utilisateur.