Разрешения на доступ к API Google Sheets в Java - PullRequest
0 голосов
/ 30 августа 2018

Здравствуйте, мои коллеги-программисты, Я работаю над Java-программой, которая автоматически создает таблицу Google с предопределенной структурой. Это работает как шарм, но у меня есть проблема с предоставлением разрешений на запись другим людям. У меня есть список учетных записей Gmail, которые должны быть разрешены для записи в моей электронной таблице, но я не могу найти способ дать эти разрешения автоматически. Я пытался следовать этим руководствам Google здесь: https://developers.google.com/drive/api/v2/reference/permissions/insert https://developers.google.com/drive/api/v3/manage-sharing

но это не работает, потому что у меня не работает DriveService, я использую SheetService, а приведенный выше код не совместим с моим SheetService.

В Google SheetsService нет импорта разрешений, как в DriveService:

нет Разрешение на импорт сюда

Так что, если кто-нибудь знает, как я могу решить эту проблему, я был бы очень благодарен. Если вам нужна дополнительная информация, просто спросите. Спасибо.

1 Ответ

0 голосов
/ 30 августа 2018

API диска Google и API листов Google - это два разных API.

Google Drive API - это файловый магазин API. Он просто контролирует сами файлы. Он не может их редактировать.

API листов Google предоставляет вам доступ к редактированию содержимого листа.

Для этого вам понадобятся две службы: одна SheetService для редактирования самого листа, другая - DriveService для добавления разрешений к листу.

Drive driveservice = new Drive.Builder(HTTP_TRANSPORT, JSON_FACTORY, getCredentials(HTTP_TRANSPORT))
            .setApplicationName(APPLICATION_NAME)
            .build();

driveservice имеет необходимые вам права доступа.

Sheets sheetsservice = new Sheets.Builder(HTTP_TRANSPORT, JSON_FACTORY, getCredentials(HTTP_TRANSPORT))
            .setApplicationName(APPLICATION_NAME)
            .build();

SheetService имеет методы доступа, необходимые для доступа к листам.

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

Необходимые разрешения

...