Может ли пользователь, который не является администратором, использовать Teamdrives.list () - PullRequest
0 голосов
/ 04 февраля 2019

Я пытался использовать расширенный сервис Drive в Google App Maker.В частности, используя параметр 'q' в аргументах опции для метода Drive.Teamdrives.list ().

После многих часов попыток сформулировать запрос, который позволил мне выполнить фильтрацию по имени, я обнаружил, чтоЯ должен установить useDomainAdminAccess = true, чтобы запрос работал.Без этого переключателя я получаю сообщение об ошибке.

Приложение My App Maker будет работать как пользователь, а не как разработчик, и предполагаемое приложение будет запрашивать, к какому Teamdrives имеет доступ пользователь, у которого есть pling (!)в имени.

Могут ли пользователи домена использовать параметр useDomainAdminAccess или это только администраторы домена?Предоставляет ли useDomainAdminAccess доступ ко всем командным дискам в домене или только к командным дискам, к которым у пользователя есть доступ?

Почему этот параметр необходим для работы параметра q?

Следует ли отказаться от этого способаделать что-то и исследовать другое?

function myFunction() {
list = Drive.Teamdrives.list({q:"name contains '!'",
                            maxResults:4,
                            useDomainAdminAccess:true});
Logger.log(list);
}

1 Ответ

0 голосов
/ 05 февраля 2019

Я должен был просто использовать функцию javascript filter () для фильтрации моего массива после сканирования дисков команды.

  list = Drive.Teamdrives.list({maxResults:100}).items;

  filtered = list.filter(function(obj){
    return obj.name.indexOf('Key') === 0;}
                       );

Код читает только те диски, к которым у пользователя есть доступ, и поэтомуне нужно использовать флаг useDomainAdminAccess.

Фильтр массива возвращает новый массив только тех командных дисков, которые начинаются со слова «Ключ».

Ответил сам!

...