Google drive api v3 подробности разрешения - PullRequest
0 голосов
/ 06 июня 2019

Я хочу получить все поля разрешений, но особенно подробности разрешений

  "permissionDetails": [
    {
      "permissionType": string,
      "role": string,
      "inheritedFrom": string,
      "inherited": boolean
    }
  ]

Я пытался

$optpParams = array('fields' => "id,emailAddress,permissionDetails"
);      

или используйте *

'fields' => "*"

Я получил некоторые данные, но не было никаких «allowDetails».

1 Ответ

0 голосов
/ 07 июня 2019

Согласно документации, разрешениеDetails доступно только для общих дисков (если вы используете обычный диск) [1].

Я могу получить разрешениеDetails, но только если я добавлю «teamDrivePermissionDetails» в поля (это тоже самое). Также, если вы используете подстановочный знак «*», он получит всю информацию, включая licenseDetails. Но в остальных случаях параметр allowDetails оказался пустым, поэтому я сообщу об этом в Google.

С помощью этого кода я могу получить разрешениеDetails:

$optpParams = array('supportsAllDrives' => true, 'fields' => "id,emailAddress,teamDrivePermissionDetails,permissionDetails");

Или просто:

$optpParams = array('supportsAllDrives' => true, 'fields' => "id,emailAddress,teamDrivePermissionDetails");

Для получения всей информации, включая разрешениеDetails:

$optpParams = array('supportsAllDrives' => true, 'fields' => "*");

Не забудьте указать значение 'SupportAllDrives' => true в массиве $ optParams, чтобы запрос мог находить файлы / папки, принадлежащие общему диску [2].

Для получения дальнейшей информации, они осуждают teamDrivePermissionDetails, а разрешение - это замена (хотя пока не работает идеально) [1].

[1] https://developers.google.com/drive/api/v3/reference/permissions

[2] https://developers.google.com/drive/api/v3/reference/permissions/get

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