Utilisation d’un dossier d’application pour stocker le contenu des utilisateurs sans accès aux fichiers
Le dossier de l’application est un dossier dédié, spécifique de votre application.
Le dossier de l’application est généralement nommé suivant votre application. Il se trouve dans le dossier Apps du OneDrive de l’utilisateur.
Si vous demandez l’étendue de l’autorisation Files.ReadWrite.AppFolder
et que l’utilisateur l’autorise, votre application dispose d’un accès en lecture et en écriture à ce dossier.
Étant donné qu’elle se comporte comme tout autre dossier du OneDrive de l’utilisateur, les utilisateurs peuvent ajouter, modifier et supprimer du contenu. Votre application n’a pas besoin de conserver une logique propre à l’utilisateur, ce qui permet à l’utilisateur de la renommer ou de la déplacer.
Demande d’autorisation à l’utilisateur
Pour disposer de votre propre dossier pour l’application, vous devez demander l’étendue d’autorisation Files.ReadWrite.AppFolder
ou Files.ReadWrite
lors de l’obtention d’un jeton d’accès.
Pour en savoir plus, consultez la rubrique relative à l’authentification.
Création de votre dossier pour l’application
OneDrive crée un dossier pour votre application dans le dossier Apps
de l’utilisateur, situé à la racine du OneDrive de l’utilisateur, lorsque votre application effectue le premier appel vers le dossier à l’aide de l’espace de noms special folder.
Vous trouverez ci-dessous les appels les plus courants que votre application peut effectuer pour créer le dossier la première fois.
- Obtenir les métadonnées de votre dossier pour l’application :
GET /drive/special/approot
- Répertorier les enfants de votre dossier pour l’application :
GET /drive/special/approot/children
- Créer un dossier sous la racine de l’application :
POST /drive/special/approot/children
- Créer une session de chargement :
POST /drive/special/approot:/{filename}:/createUploadSession
- Charger le contenu d’un élément :
PUT /drive/special/approot:/{fileName}:/content
- Télécharger le contenu d’un élément avec des métadonnées :
POST /drive/special/approot/children
- Télécharger le contenu d’un élément à partir de l’URL :
POST /drive/special/approot/children
Attribution d’un nom à votre dossier pour l’application
Lorsque OneDrive crée un dossier pour votre application, il utilise le nom de l’application défini à ce stade pour l’ID de l’application appelant. Vous pouvez modifier le nom du dossier de votre application dans la page d’inscriptions des applications Azure. Pour ce faire, recherchez le nom du dossier de votre application en accédant à la page d’inscriptions des applications Azure et modifiez les paramètres de localisation de votre application. La modification du nom de dossier de votre application dans la page d’inscriptions Azure App ne renomme pas les dossiers spéciaux existants associés à votre application.
Utilisation du dossier de votre application
Le dossier de votre application prend en charge toutes les opérations item
standard.
Tâches courantes | Méthode HTTP (par chemin d’accès) |
---|---|
Obtenir les métadonnées pour un élément | GET /drive/special/approot:/{path} |
Répertorier les enfants d’un élément | GET /drive/special/approot:/{path}:/children |
Créer un élément | PUT /drive/special/approot:/{parent-path}/{name} |
Télécharger le contenu d’un élément | PUT /drive/special/approot:/{parent-path}/{name}:/content |
Mettre à jour le contenu d’un élément | PATCH /drive/special/approot:/{path} |
Supprimer un élément | DELETE /drive/special/approot:/{path} |
Déplacer un élément | PATCH /drive/special/approot:/{path} |
Copier un élément | POST /drive/special/approot:/{path}:/action.copy |
Télécharger le contenu d’un élément | GET /drive/special/approot:/{path}:/content |
Télécharger un format de fichier spécifique | GET /drive/special/approot:/{path}:/content?format={format} |
Rechercher un élément | GET /drive/special/approot:/{path}:/search |
Afficher les modifications apportées à un élément | GET /drive/special/approot:/{path}:/delta |
Obtenir les miniatures d’un élément | GET /drive/special/approot:/{path}:/thumbnails |