Как проверить настройки безопасности с помощью Google Script? - PullRequest
0 голосов
/ 20 сентября 2018

Я пытаюсь отобразить предупреждающее сообщение для файлов на Google Диске, которые имеют нежелательные настройки доступа.Этот код (фрагмент) не работает:

    var security = DriveApp.getFileById(my_id).getSharingAccess();
    switch (security) {
      case "PRIVATE":
        Browser.msgBox("WARNING: This file is currently PRIVATE. Please update the sharing options to make it available to other users.");
        break;  

Если я отображаю переменную "security" в окне сообщения, он отображает "PRIVATE", но я не думаю, что getSharingAccess() возвращает строку, поэтому яЯ не уверен, как проверить это.

1 Ответ

0 голосов
/ 20 сентября 2018

Во-первых, в вашем фрагменте отсутствует закрывающая скобка.

Во-вторых, для других, читающих это, этот фрагмент кода неявно предполагает, что он выполняется как часть сценария, привязанного к электронной таблице (браузер ).msgbox () требуется вызов изнутри этого контекста для работы).

Тем не менее, вот мое предложение:

function myFunc() {
      var security = DriveApp.getFileById(my_id).getSharingAccess();


      if (security == DriveApp.Access.PRIVATE){
        Browser.msgBox("WARNING: This file is currently PRIVATE. Please update the sharing options to make it available to other users.");
      } else if (security == DriveApp.Access.ANYONE_WITH_LINK){
      // etc.
      }
}

Ваша проблема заключалась в попытке использовать security переменная как строка - это действительно объект, хотя Google App Script иногда достаточно интеллектуален, чтобы просто анализировать его как строку при, например, печати в консоль.

Поэтому вы должны явно сравнить его с правами доступа, чтобы получить желаемый результат.

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...