Push-уведомления Drive API для веб-приложения Google Apps Script

#google-apps-script #google-cloud-platform #web-applications #google-search-console

#google-приложения-скрипт #google-drive-api #google-apps-script

Вопрос:

Я хочу настроить Push-уведомление с помощью Google Drive API и веб-хук, настроенный с помощью Google Apps Script. Я не могу понять, возможно ли это или нет.

Часть шагов, которые я не могу понять, — это шаги проверки домена.У меня есть веб-приложение, опубликованное с doGet, как показано ниже:

 function doGet() {
  refreshCandidates();

  return HtmlService.createHtmlOutput('<b>google site verification</b>')
  .addMetaTag('google-site-verification', 'Iu3xxxxxx')
  .setSandboxMode(HtmlService.SandboxMode.IFRAME);
}
  

Когда я пытаюсь проверить URL-адрес, он выдает меня https://script.google.com/...ZS2/exec в качестве конечной точки. Но когда я пытаюсь проверить, он нажимает https://script.google.com/...ZS2/exec/ и находит совершенно другой мета-тег.

Кто-нибудь успешно использовал drive api и push-уведомления с помощью Google apps script? Чего мне не хватает?

Ответ №1:

К сожалению, больше невозможно проверить URL-адрес веб-приложения GAS. Примерно до августа 2019 года была доступна опция «Зарегистрироваться в интернет-магазине Chrome» в меню «Опубликовать» в редакторе сценариев приложений. Тогда для любого зарегистрированного таким образом веб-приложения его URL-адрес автоматически проверялся. Однако с тех пор эта опция была удалена, а методы проверки, доступные в консоли поиска, просто не работают для URL-адресов веб-приложений GAS.

Кроме того, даже когда проверка была возможна, было невозможно эффективно использовать Push-уведомления Drive, поскольку вся соответствующая информация об уведомлениях хранится в заголовках HTTP, которые недоступны из функции GAS doPost().

Google Apps Script больше не является жизнеспособной платформой для реализации Push-уведомлений Google API в большинстве сервисов (Gmail, Drive, Календарь, каталог администратора и т. Д.). Если вы хотите использовать облачные предложения Google, вы можете изучить альтернативные варианты. Функции Google Cloud — один из таких вариантов.


ОБНОВЛЕНИЕ: Gmail использует облачный Pubsub для push-уведомлений, и эта служба недавно была обновлена, чтобы устранить необходимость проверки домена для конечных точек push. Итак, в дальнейшем теперь можно использовать URL-адреса веб-приложений GAS в этом сценарии.

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

1. Это был абсолютно правильный ответ. В итоге я перешел на облачные функции, как было предложено. Спасибо!

Ответ №2:

В настоящее время, похоже, невозможно проверить веб-приложение, опубликованное с помощью Google apps script, с помощью проверки сайта Google в Search Console.

Был сделан запрос функции в Google. Проблему можно отследить здесь. Подумайте о том, чтобы добавить звездочку (вверху слева), чтобы Google определил приоритет проблемы.