Якщо ви створюєте інтерфейс користувача для сценарію, ви можете опублікувати сценарій як веб-додаток. Наприклад, сценарій, який дозволяє користувачам планувати зустрічі з членами групи підтримки, найкраще представити у вигляді веб-програми, щоб користувачі могли отримати доступ до нього безпосередньо зі своїх браузерів.
Політика конфіденційності та Умови використання //policies.google.com/terms
Google Workspace>Apps Script>Гиды>Веб-приложения //developers.google.com/apps-script/guides/web
Вступ
Произвольный JavaScript сценарий можно опубликовать как веб-приложение, которое будет выполняться в среде Google Apps Script. Для этого должен соответствовать двум простым требованиям:
- скрипт размещен в Google Drive в файле Google Apps Script
- скрипт содержит функцию doGet(e) и/или doPost(e)
Функції doGet(e) и doPost(e)
!!!
Параметры запроса
Когда пользователь посещает приложение или программа отправляет приложению HTTP-запрос GET , Apps Script запускает функцию doGet(e) . Когда программа отправляет приложению HTTP-запрос POST , Apps Script вместо этого запускает doPost(e) . В обоих случаях аргумент e представляет параметр события, который может содержать информацию о любых параметрах запроса. Структура объекта события показана в таблице ниже:
- e.queryString Значение части строки запроса URL-адреса или null , если строка запроса не указана name=alice&n=1&n=2
- e.parameter Объект пар ключ/значение, соответствующий параметрам запроса. Для параметров, имеющих несколько значений, возвращается только первое значение {"name": "alice", "n": "1"}
- e.parameters Объект, аналогичный e.parameter , но с массивом значений для каждого ключа {"name": ["alice"], "n": ["1", "2"]}
- e.pathInfo URL-путь после /exec или /dev . Например, если путь URL-адреса заканчивается на /exec/hello , информация о пути будет hello
- e.contentLength Длина тела запроса для запросов POST или -1 для запросов GET
- e.contextPath Не используется, всегда пустая строка
- e.postData.length То же, что и e.contentLength 332
- e.postData.type MIME-тип тела POST text/csv
- e.postData.contents Текст содержимого тела POST Alice,21
- e.postData.name Всегда значение «postData»
Возвращаемый результат
Функция возвращает объект HtmlOutput службы HTML или объект TextOutput службы контента .
1 2 3 4 |
function doGet(e) { var htmlOutput = HtmlService.createHtmlOutput('<h1>Hello, World!</h1>'); return htmlOutput; } |
///
Вызов функции другого проекта !!! не проверял
1 2 |
var externalProjectId = '1OgYj9Ej7BrSjAgoyD7TJLpJQYRIqmkFXYc87W_XqDBSmu5LSSqYPr8RZ'; var result = SpreadsheetApp.openById(externalProjectId).myExternalFunction(); |
Джерела
Рекомендации /перечислены лучшие практики, которые помогут вам повысить производительность ваших сценариев //developers.google.com