Получить app_id с сайтов Google

#google-apps-script #google-sites #google-sites-2016

#google-apps-script #google-сайты #google-сайты-2016

Вопрос:

Я хочу предоставить доступ к своим сайтам с помощью скрипта, для документов Google я могу получить идентификатор из URL: https://docs.google.com/document/d /<doc_id>/отредактируйте
и сделайте это: DriveApp.getFileById(‘<doc_id>’).addViewer(идентификатор электронной почты);

но для сайтов Google я получаю этот формат вместо этого:
https://sites.google.com/d /<id_1>/p/<id_2>/редактировать
Я пытался использовать id_1 и id_2, но оба не работают.

Кто-нибудь может мне помочь?

Спасибо

Ответ №1:

Правильный идентификатор файла, который будет использоваться для сайтов Google, — это <id_1> . Причина, по которой вы не можете добавить зрителей на сайт, заключается в том, что, в отличие от Документов Google, на сайтах Google нет опции совместного просмотра. Вместо этого он использует параметр published viewer.

Пример: 3 пользователя с разными правами доступа (в этом примере я использую новые сайты Google)

введите описание изображения здесь

Пример кода:

 function myFunction() {
  Logger.log(DriveApp.getFileById('id_1').getViewers());
  Logger.log(DriveApp.getFileById('id_1').getEditors());
}
 

Журналы:

 [21-01-07 00:52:50:404 HKT] []
[21-01-07 00:52:50:719 HKT] [DriveUser]
 

Если вы хотите настроить просмотрщиков для своего сайта Google, вы можете использовать сервис сайтов в Apps Script. Однако вы можете использовать Site.addViewer (адрес электронной почты) только для классических сайтов.

22 ноября 2016 года была запущена восстановленная версия сайтов. В настоящее время Apps Script не может получить доступ к сайтам, созданным с помощью этой версии, или изменять их, но script по-прежнему может получать доступ к классическим сайтам.

(Обновление)

В настоящее время нет другого способа обновить сайты Google с помощью скрипта приложений или API.

На основании этой ссылки: когда будет доступен API сайта Google?

Новая версия Google Sites на данный момент не предлагает API, но Google объявила, что будут доступны возможности API, включая интеграцию с Google Apps Script.

Для получения более подробной информации см. График устаревания — классические сайты Google

Google не указывает даты, когда функции будут доступны, поэтому вы их не найдете.

Комментарии:

1. Тогда как я могу использовать скрипт для добавления представления издателя?