Как программно удалить файл с «поделиться со мной» в Google Drive - PullRequest
1 голос
/ 26 июня 2019

Выполнение следующей команды с полным объемом диска

var request = service.Files.Delete(fileId);

результаты в

ошибка недостаточного разрешения.

При попытке удалить файл с гугл-диска "Shared with me" папка.

Как удалить файл из общего доступа, если пользователь, вошедший в систему, на самом деле не имеет доступа к удалению файла, которым он не владеет.

1 Ответ

1 голос
/ 26 июня 2019

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

Первое, что вам нужно сделать, это запустить about.get для текущего пользователя

return service.About.Get().Execute();

Это даст вам идентификатор доступа этого пользователя

"missionId ":" 060305882255734372 ",

Как только это будет сделано, вы можете сделать permissions.get для этого пользователя.

var response = service.Permissions.Get(fileId, permissionId).Execute();

Ответ

{
 "kind": "drive#permission",
 "id": "06030588225573437",
 "type": "user",
 "role": "writer"
}

, который даст вам идентификатор разрешения в файле для данного пользователя.

Затем вы можете удалить разрешение на файл для пользователя, используя allow.delete

var response = service.Permissions.Delete(fileId, permissionId).Execute();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...