Использование папки приложения для хранения контента пользователя без доступа ко всем файлам

Папка приложения — это папка, специально выделенная для вашего приложения. Имя папки приложения обычно совпадает с названием приложения, а сама папка находится в папке Apps в OneDrive пользователя. Если вы запросите разрешение Files.ReadWrite.AppFolder, и пользователь предоставит его, ваше приложение получит доступ на чтение и запись к этой папке. Так как она работает так же, как и любая другая папка в OneDrive пользователя, пользователи могут добавлять, изменять и удалять содержимое из нее. Вашему приложению не нужно поддерживать уникальную для пользователя логику, что позволяет пользователю переименовывать или перемещать его.

Получение авторизации от пользователя

Чтобы получить папку для вашего приложения, вам потребуется запросить область разрешения Files.ReadWrite.AppFolder или Files.ReadWrite при получении маркера доступа. Дополнительные сведения см. в статье о проверке подлинности.

Создание папки приложения

Когда ваше приложение совершает первый вызов к папке с использованием пространства имен special folder, OneDrive создает папку приложения в папке Apps пользователя, расположенной в корне OneDrive пользователя. Ниже указаны наиболее часто используемые вызовы, которые ваше приложение может совершить, чтобы в первый раз создать папку.

Задание имени для папки приложения

Когда OneDrive создает папку вашего приложения, он использует имя Application, заданное на этом этапе для идентификатора вызывающего приложения. Вы можете изменить имя папки своего приложения на странице регистрации приложений Azure. Если вы решите сделать это, вы можете локализовать имя папки своего приложения, перейдя на страницу регистрации приложений Azure и изменив параметры локализации для своего приложения. Изменение имени папки приложения на странице регистрации приложение Azure не приведет к переименованию существующих специальных папок, связанных с приложением.

Работа с папкой приложения

Над папкой приложения можно выполнять все стандартные операции item.

Стандартная задача Метод HTTP (с использованием пути)
Получение метаданных для элемента GET /drive/special/approot:/{path}
Получение списка дочерних элементов элемента GET /drive/special/approot:/{path}:/children
Создание элемента PUT /drive/special/approot:/{parent-path}/{name}
Отправка содержимого элемента PUT /drive/special/approot:/{parent-path}/{name}:/content
Обновление содержимого элемента PATCH /drive/special/approot:/{path}
Удаление элемента DELETE /drive/special/approot:/{path}
Перемещение элемента PATCH /drive/special/approot:/{path}
Копирование элемента POST /drive/special/approot:/{path}:/action.copy
Скачивание содержимого элемента GET /drive/special/approot:/{path}:/content
Скачивание файла в определенном формате GET /drive/special/approot:/{path}:/content?format={format}
Поиск элемента GET /drive/special/approot:/{path}:/search
Просмотр изменений для элемента GET /drive/special/approot:/{path}:/delta
Получение эскизов для элемента GET /drive/special/approot:/{path}:/thumbnails