Ако имам функция, написана в редактора на скриптове на Google Spreadsheets, която извлича данните в електронната таблица във формат JSON, как мога да получа достъп до тази функция извън редактора на скриптове в моя собствен код? Искам да получа достъп до този JSON и да го манипулирам в моя собствен код. Има ли начин да направите това с помощта на API за електронни таблици? Форматирам го по специфичен начин в редактора на скриптове, така че не мога просто да използвам предоставения json-in-script. В разговора (http://spreadsheets.google.com/feeds/feed/key/worksheet/public/basic?alt=json-in-script&callback=myFunc) има функция за обратно извикване за myFunc. Мога ли да използвам функцията, която дефинирах в редактора на скриптове, за да заменя myFunc?
Как мога да получа достъп до функции, дефинирани в Google Script Editor извън него?
Отговори (1)
След вашия коментар, който предоставя някои подробности за вашия случай на употреба, има функция на Google-Apps-Script, специално проектирана да дава достъп до някои функции, които сте написали от друг скрипт: тя се нарича библиотеки и е напълно описано в документацията.
РЕДАКТИРАНЕ, след коментар от 2 секунди:
Извикването на функция GS от скрипт на javascript (или друг език), който не е скрипт на Google (GS), не е възможно, ако смятате да го използвате като функция...
но
това, което в крайна сметка можете да направите - в зависимост от данните, които тази функция трябва да обработва - е да внедрите скрипт като уеб приложение, работещо като услуга, и да извикате тази услуга от вашето външно приложение, като използвате еквивалента на urlFetch (това е услугата, която прави това в GS).
Услугата ще има url, към който можете да добавяте параметри и ще върне резултат, който можете да използвате във вашето локално приложение.
Разбира се, този работен процес има няколко ограничения и може бързо да стане сложен, но в много случаи е напълно работещ.
Обърнете внимание, че URL адресът, който ще трябва да използвате във „версирания“, завършващ с .exec (Не съм сигурен, че тази дума е правилна, но имам предвид публикувания URL адрес, който съответства на версия на вашия скрипт, а не „.dev“ този, който може да се използва за тестване на скрипт в GS).
Ще намерите подробности за това в документацията и в много други ресурси, включително SO. URL адресът обикновено е нещо подобно:
https://script.google.com/macros/s/AKfycbyw-2WtmF7wsd__________azjImbMWm5YrxB8/exec?someParameter=someValue&otherParam=otherVal // etc...