#microsoft-graph-api
#microsoft-graph-api
Вопрос:
Можно ли использовать Microsoft graph api для получения идентификатора папки в библиотеке документов sharepoint? Если да, то как?
Я вижу в документации, что я могу получить путь к папке и / или файлу и выполнять запросы на основе этого пути. Но я хотел бы получить идентификатор, чтобы, если папка и / или файл когда-либо меняли имя, я все равно мог запросить эту конкретную папку и / или файл. Возможно ли это?
В частности, я создаю внутреннюю панель мониторинга для своих сотрудников. У нас есть папка в библиотеке документов sharepoint под названием «Контакты». В этой папке «Контакты» у нас есть n вложенных папок, таких как «Джон Доу», «Джейн Доу» и т. Д. Если сотрудник просматривает информацию для John Doe на нашей внутренней панели управления сотрудниками, я бы хотел отобразить любые дочерние папки и / или файлы John Doe.
Опять же, все, что я могу найти в документации graph api, — это как выполнять запросы на основе относительного пути. Я хотел бы иметь возможность использовать API для получения идентификатора для любой папки и / или файла, а также для возврата любых дочерних объектов любой папки с использованием идентификатора (а не относительного пути). Как я могу это сделать?
Комментарии:
1. Да, вы можете получить идентификатор папки, используя приведенный ниже вызов
https://graph.microsoft.com/v1.0/sites/siteid/drives/{document libraryid}/root/children
. Это даст вам все файлы и папки в вашей библиотеке документов. Если вы ищете идентификатор библиотеки документов, вы можете использоватьhttps://graph.microsoft.com/v1.0/sites/siteid/drives
. Это дает вам идентификатор библиотеки документов2. @Shiva-MSFTIdentity Этот первый вызов api, которым вы делитесь, предоставит мне все файлы и папки в библиотеке документов. Но как только я узнаю идентификатор определенной папки, есть ли способ получить список дочерних папок и файлов в этой конкретной папке и вернуть результаты только на один уровень? Например, предположим, что в root у меня есть Folder1, Folder2, Folder3. И, допустим, Folder1 содержит дочернюю подпапку и FileX. И, допустим, вложенная папка содержит дочерние файлы FileQ и FileW. Я бы хотел, чтобы запрос использовал идентификатор для Folder1 и извлекал только вложенную папку и FileX. Возможно ли это?
3. Да, это возможно. Вы должны использовать приведенный ниже запрос
https://graph.microsoft.com/v1.0/sites/{siteid}/drives/{document libraryid}/items/{folderid}/children
. Если вы хотите получить идентификатор папки, используйте этот вызовhttps://graph.microsoft.com/v1.0/sites/{siteid}/drives/{document libraryid}/root/children
и получите идентификатор папки :)-4. Перемещение этого в ответ
Ответ №1:
Да, это возможно. Вы должны использовать следующий запрос
https://graph.microsoft.com/v1.0/sites/{siteid}/drives/{document libraryid}/items/{folderid}/children.
Если вы хотите получить идентификатор папки, используйте этот вызов
https://graph.microsoft.com/v1.0/sites/{siteid}/drives/{document libraryid}/root/children and get the id of the folder