Google Apps Script

редактировать
Apps Script
Google Apps Script.png
Разработчик (и) Google
Первый выпуск19 августа, 2009; 11 лет назад (2009-08-19)
Написано наJavaScript
Тип Структура веб-приложений,
Веб-сайтскрипт.google.com

Apps Script - это платформа сценариев, разработанная Google для разработки легких приложений на платформе Google Workspace. Скрипт Google Apps изначально был разработан Майком Хармом в качестве побочного проекта, когда он работал разработчиком в Google Таблицах. Google Apps Script был впервые публично объявлен в мае 2009 года, когда Джонатан Рошель, тогдашний менеджер по продукту Google Docs, объявил о программе бета-тестирования. В августе 2009 года скрипт Google Apps впоследствии стал доступен всем клиентам Профессионального пакета Google Apps и пакета для учебных заведений. Он основан на JavaScript 1.6, но также включает некоторые части 1.7 и 1.8 и подмножество ECMAScript 5 API. Проекты скриптов приложений запускаются на стороне сервера в инфраструктуре Google. Согласно Google, Apps Script «предоставляет простые способы автоматизации задач в продуктах Google и сторонних сервисах». Скрипт приложений также является инструментом, который поддерживает надстройки для Google Документов, таблиц и слайдов.

Содержание
  • 1 Преимущества
  • 2 Ограничения
  • 3 Пример
  • 4 Надстройки
  • 5 См. Также
  • 6 Ссылки
  • 7 Внешние ссылки
Преимущества
  1. На основе JavaScript 1.6 и некоторых JavaScript 1.7 и 1.8
  2. Облачный отладчик для отладки скриптов приложений в Интернете браузер.
  3. Его можно использовать для создания простых инструментов для внутреннего потребления организации.
  4. Его можно использовать для выполнения простых задач системного администрирования.
  5. Модель поддержки на уровне сообщества. [1]
Ограничения
  1. Ограничения обработки. Будучи облачной службой, скрипт приложений ограничивает время, в течение которого скрипт пользователя может запускаться, а также ограничивает доступ к сервисам Google.
  2. В настоящее время в Google Apps Store не разрешено прямое подключение к внутренним корпоративным базам данных (за брандмауэром), что является ключом к созданию бизнес-приложений, однако с помощью службы JDBC это можно преодолеть, если подключения разрешены с серверов Google. на внутренний сервер базы данных. Точно так же отсутствие других возможностей подключения, таких как подключение LDAP, ограничивает уровень, до которого GAS может использоваться на предприятии.
  3. Из-за облачной природы скрипта приложений, функции, связанные с датой и временем, будут давать результаты, которые кажутся неверными из-за того, что данные пересекают часовые пояса. Использование объектов и функций Date / Time без очень точного объявления и тщательного тестирования может привести к неточным результатам.
Пример
function doGet (e) {var searchTerm = 'Script Tools' var ui = XmlService.createDocument (XmlService.createElement ('html')). setDocType (XmlService.createDocType ('html')) var body = XmlService.createElement ('body') body = buildTree (body, searchTerm); ui.getRootElement (). addContent (body) return HtmlService.createHtmlOutput (XmlService.getRawFormat (). format (ui))} функция buildTree (node, searchTerm) {var ul = XmlService.createElement ('ul'). addContent (XmlService)..createElement ('p'). addContent (XmlService.createText (searchTerm))); // Использование службы DriveApp сценария приложений для получения коллекций. var папки = DriveApp.getFoldersByName (searchTerm).next (). getFolders () в то время как (папки.hasNext ()) {var thisFolder = folder.next (); var li = XmlService.createElement ('li'); var resp = buildTree (li, thisFolder.getName ()) ul.addContent (li); } var files = DriveApp.getFoldersByName (searchTerm).next (). getFiles () while (files.hasNext ()) {var thisFile = files.next () if (thisFile.getMimeType () === "application / vnd. google-apps.document ") {urlBase =" https://docs.google.com/document/edit?id= "; iconHTML = "https://drive-thirdparty.googleusercontent.com/32/type/application/vnd.google-apps.document"; } else if (thisFile.getMimeType () === "application / vnd.google-apps.spreadsheet") {urlBase = "https://spreadsheets.google.com/ccc?key="; iconHTML = "https://drive-thirdparty.googleusercontent.com/32/type/application/vnd.google-apps.spreadsheet"; } else if (thisFile.getMimeType () === "application / vnd.google-apps.script") {urlBase = "https://docs.google.com/fileview?https://drive-thirdparty.googleusercontent.com/32/type/application/vnd.google-apps.script"; } else if (thisFile.getMimeType () === "application / vnd.google-apps.presentation") {urlBase = "https://docs.google.com/present/edit?https://drive-thirdparty.googleusercontent.com/32/type/application/vnd.google-apps.presentation"; } else if (thisFile.getMimeType () === "application / vnd.google-apps.drawing") {urlBase = "https://docs.google.com/drawings/edit?https://drive-thirdparty.googleusercontent.com/32/type/application/vnd.google-apps.drawing"; } else {urlBase = "https://docs.google.com/fileview?https://drive-thirdparty.googleusercontent.com/32/type/application/application/vnd.google-apps.unknown"; } var li = XmlService.createElement ('li'); var image = XmlService.createElement ('img'). setAttribute ('src', iconHTML); var fileLabel = XmlService.createElement ('a'). setAttribute ('href', urlBase + thisFile.getId ()).setAttribute ('target', '_blank'). addContent (XmlService.createText (thisFile.getName ())) var fileLabelPanel = XmlService.createElement ('div'). setAttribute ('style', 'display: flex; flex-direction: row;') fileLabelPanel.addContent (изображение) fileLabelPanel.addContent (fileLabel) li.addContent (fileLabelPanel) ul.addContent (li)} node.addContent (ul) возвращаемый узел; }
Надстройки

В марте 2014 года Google представила надстройки для Документов и Таблиц (вскоре за ними последовали Формы). Магазины надстроек позволяют пользователям добавлять в редакторы Google дополнительные функции, такие как объединение писем, рабочие процессы, построители диаграмм и т. Д. Все надстройки либо на 100% построены с помощью скрипта приложений, либо просто используют скрипт приложений для отображения пользовательского интерфейса в редакторы Google, полагаясь на внешний бэкэнд для выполнения некоторых задач. Например, MailChimp, инструмент для слияния писем, имеет надстройку для Google Docs, которая взаимодействует с платформой MailChimp для отправки электронных писем.

До появления надстроек можно было публиковать скрипты для Google Таблиц в галерее скриптов. Когда пользователи устанавливали скрипты через эту галерею, копия кода скрипта приложений была установлена ​​на листе пользователя. С надстройками исходный код не виден конечному пользователю, и все используют последнюю версию, опубликованную разработчиком. Этот новый подход упростил поддержку существующего кода и помог убедить несколько компаний, таких как MailChimp или LucidChart, инвестировать в Apps Script.

В рамках выпуска надстроек Google также представила руководство по стилю пользовательского интерфейса и пакет CSS, чтобы помочь разработчикам создавать надстройки, которые легко интегрируются в редакторы. Каждое дополнение также проверяется Google перед публикацией, и разработчики могут воспользоваться советами сотрудников Google, чтобы улучшить взаимодействие с пользователем. Встраивать рекламу в надстройки невозможно, но можно монетизировать их.

См. Также
Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-22 14:01:05
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте