Список дочерних элементов вложенной папки документов SharePoint

#sharepoint #azure-active-directory #microsoft-graph-api

#sharepoint #azure-активный каталог #microsoft-graph-api

Вопрос:

Я пытаюсь использовать Microsoft Graph для перечисления и загрузки файлов в SharePoint. Я использую прямой http, а не какую-либо библиотеку. Моя проблема в том, что я не могу перечислить дочерние элементы вложенных папок, найденных в библиотеках SharePoint.

Я запускаю процесс с помощью этого вызова для получения списка идентификаторов дисков:

 https://graph.microsoft.com/v1.0/sites/host.sharepoint.com/drives
 

(«хост» на самом деле отличается для моего сайта)

Допустим, идентификатором диска является «ABCDEF». Затем я использую этот вызов для получения списка файлов на диске SharePoint:

 https://graph.microsoft.com/v1.0/sites/host.sharepoint.com/drives/ABCDEF/root/children
 

Это дает для каждого файла идентификатор файла и имя файла. Если в моей библиотеке документов создана вложенная папка, я могу различать файлы и папки, ища элемент «папка». Идентификатор вложенной папки похож на идентификатор файлов. Допустим, идентификатор папки — «XYZ».

Теперь я хочу получить список дочерних элементов для вложенной папки. Я использую этот вызов:

 https://graph.microsoft.com/v1.0/sites/host.sharepoint.com/drive/items/XYZ/children
 

К сожалению, это приводит к ошибке http 404 с сообщением «Ресурс не найден». Я пробовал варианты этого URL-адреса, такие как диски / XYZ / root / дочерние элементы, но ничего не работает.

Может ли кто-нибудь предоставить мне правильный URL-адрес для получения списка файлов из вложенной папки библиотеки SharePoint?

Комментарии:

1. Привет, у вас была возможность проверить мой ответ?

2. Извините, что опоздал с ответом — да, это отлично работает, спасибо за вашу помощь.

Ответ №1:

Это связано с тем, что диск по умолчанию host.sharepoint.com/drive/ отличается от host.sharepoint.com/drives/ABCDEF .

XYZ находится на ABCDEF диске, а не на диске по умолчанию.

Использование https://graph.microsoft.com/v1.0/sites/host.sharepoint.com/drives/ABCDEF/items/XYZ/children должно решить эту проблему.