Dostęp do publikowania skryptów i aktywatorów oraz manipulowanie nimi. Ta klasa umożliwia użytkownikom tworzenie skryptu i kontrolować publikowanie skryptu jako usługi.
Właściwości
Właściwość | Typ | Opis |
---|---|---|
AuthMode | AuthMode | Wyliczenie określające, do których kategorii autoryzowanych usług może mieć Apps Script za pomocą aktywowanej funkcji. |
AuthorizationStatus | AuthorizationStatus | Wyliczenie wskazujące stan autoryzacji skryptu. |
EventType | EventType | Wyliczenie określające typ wywołanego zdarzenia. |
InstallationSource | InstallationSource | Wyliczenie określające sposób zainstalowania skryptu jako dodatku na urządzeniu użytkownika. |
TriggerSource | TriggerSource | Wyliczenie wskazujące źródło zdarzenia, które powoduje uruchomienie reguły. |
WeekDay | Weekday | Wyliczenie reprezentujące dni tygodnia. |
Metody
Metoda | Zwracany typ | Krótki opis |
---|---|---|
deleteTrigger(trigger) | void | Usuwa daną regułę, aby przestała działać. |
getAuthorizationInfo(authMode) | AuthorizationInfo | Pobiera obiekt używany do określenia, czy użytkownik musi autoryzować ten skrypt, aby użyć jednego lub więcej usług i podać adres URL okna autoryzacji. |
getIdentityToken() | String | Pobiera token tożsamości OpenID Connect dla platformy
efektywny użytkownik, jeśli został przydzielony zakres openid . |
getInstallationSource() | InstallationSource | Zwraca wartość wyliczeniową wskazującą, w jaki sposób skrypt został zainstalowany jako dodatek dla bieżącego użytkownika (na przykład czy użytkownik zainstalował je osobiście za pomocą przeglądarki Chrome), Store , czyli informacji o tym, czy administrator domeny zainstalował ją dla wszystkich użytkowników). |
getOAuthToken() | String | Otrzymuje dostęp OAuth 2.0 efektywnego użytkownika. |
getProjectTriggers() | Trigger[] | Pobiera wszystkie możliwe do zainstalowania aktywatory powiązane z bieżącym projektem i bieżącym użytkownikiem. |
getScriptId() | String | Pobiera unikalny identyfikator projektu skryptu. |
getService() | Service | Pobiera obiekt używany do sterowania publikowaniem skryptu jako aplikacji internetowej. |
getUserTriggers(document) | Trigger[] | Pobiera wszystkie instalowalne aktywatory należące do tego użytkownika w danym dokumencie dla tego skryptu lub tylko dodatek. |
getUserTriggers(form) | Trigger[] | Pobiera wszystkie instalowalne aktywatory należące do tego użytkownika w podanym formularzu dla tego skryptu lub dodatku |
getUserTriggers(spreadsheet) | Trigger[] | Pobiera wszystkie instalowalne aktywatory należące do tego użytkownika w danym arkuszu kalkulacyjnym dla tego skryptu lub tylko dodatek. |
invalidateAuth() | void | Unieważnia autoryzację, którą musi wykonać rzeczywisty użytkownik, aby wykonać bieżący skrypt. |
newStateToken() | StateTokenBuilder | Tworzy kreator dla tokena stanu, którego można używać w interfejsie API z wywołaniem zwrotnym (np. w przepływie OAuth). |
newTrigger(functionName) | TriggerBuilder | Rozpoczyna proces tworzenia instalacyjnego aktywatora, który po uruchomieniu wywołuje określoną funkcję. |
Szczegółowa dokumentacja
deleteTrigger(trigger)
Usuwa daną regułę, aby przestała działać.
// Deletes all triggers in the current project. var triggers = ScriptApp.getProjectTriggers(); for (var i = 0; i < triggers.length; i++) { ScriptApp.deleteTrigger(triggers[i]); }
Parametry
Nazwa | Typ | Opis |
---|---|---|
trigger | Trigger | Aktywator do usunięcia. |
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/script.scriptapp
getAuthorizationInfo(authMode)
Pobiera obiekt używany do określenia, czy użytkownik musi autoryzować ten skrypt, aby użyć jednego lub więcej usług i podać adres URL okna autoryzacji. Jeśli skrypt został opublikowany jako dodatek, który używa wyzwalaczy możliwych do zainstalowania, te informacje mogą zostać służy do kontrolowania dostępu do fragmentów kodu, do których użytkownik nie ma wymaganych autoryzacji. Dodatek może też poprosić użytkownika o otwarcie adresu URL na potrzeby autoryzacji. w celu rozwiązania problemu.
var authInfo = ScriptApp.getAuthorizationInfo(ScriptApp.AuthMode.FULL); status = authInfo.getAuthorizationStatus(); url = authInfo.getAuthorizationUrl();
Parametry
Nazwa | Typ | Opis |
---|---|---|
authMode | AuthMode | tryb autoryzacji, dla którego są wymagane informacje dotyczące autoryzacji; cale
w prawie wszystkich przypadkach wartością authMode powinna być ScriptApp.getAuthorizationInfo(ScriptApp.AuthMode.FULL) , ponieważ nie ma innych trybów autoryzacji
wymaga, aby użytkownicy udzielili autoryzacji |
Powrót
AuthorizationInfo
– obiekt, który może dostarczać informacje o stanie autoryzacji użytkownika;
getIdentityToken()
Pobiera token tożsamości OpenID Connect dla platformy
efektywny użytkownik, jeśli został przydzielony zakres openid
. Ten zakres nie jest uwzględniony
domyślnie i musisz dodać go jako zakres jawny w pliku manifestu
, aby o niego poprosić. Uwzględnij zakresy https://www.googleapis.com/auth/userinfo.email
lub https://www.googleapis.com/auth/userinfo.profile
, aby zwrócić dodatkowe
informacje o użytkowniku w tokenie.
Zwracany token identyfikatora to zakodowany token internetowy JSON (JWT). musi zostać zdekodowany, aby wyodrębnić z niego informacje. W przykładach poniżej pokazujemy, jak zdekodować i wyodrębnij obowiązujący identyfikator profilu Google użytkownika.
var idToken = ScriptApp.getIdentityToken(); var body = idToken.split('.')[1]; var decoded = Utilities.newBlob(Utilities.base64Decode(body)).getDataAsString(); var payload = JSON.parse(decoded); var profileId = payload.sub; Logger.log('Profile ID: ' + profileId);Zapoznaj się z dokumentacją OpenID Connect. dokumentację z pełną listą zwróconych pól (roszczeń).
Powrót
String
– token tożsamości, jeśli jest dostępny; w przeciwnym razie: null
.
getInstallationSource()
Zwraca wartość wyliczeniową wskazującą, w jaki sposób skrypt został zainstalowany jako dodatek dla bieżącego użytkownika (na przykład czy użytkownik zainstalował je osobiście za pomocą przeglądarki Chrome), Store , czyli informacji o tym, czy administrator domeny zainstalował ją dla wszystkich użytkowników).
Powrót
InstallationSource
– źródło instalacji.
getOAuthToken()
Otrzymuje dostęp OAuth 2.0 efektywnego użytkownika. Jeśli zakresy OAuth skryptu są wystarczające do autoryzacji innego interfejsu API Google, który normalnie wymaga własnego przepływu OAuth (np. Selektora Google), skrypty mogą pomijać przez przekazanie tego tokena. Token wygaśnie po pewnym czasie (a co najmniej kilka minut); skrypty powinny obsługiwać błędy autoryzacji i wywoływać tę metodę w celu w razie potrzeby uzyskać nowy token.
Token zwracany przez tę metodę zawiera tylko zakresy, których skrypt obecnie potrzebuje. Zakresy, które zostały wcześniej autoryzowane, ale nie są już używane przez skrypt, nie są uwzględnione w zwrócony token. Jeśli potrzebne są dodatkowe zakresy protokołu OAuth wykraczające poza sam skrypt wymaga, można je określić w skrypcie manifestu.
Powrót
String
– ciąg znaków reprezentujący token OAuth 2.0.
getProjectTriggers()
Pobiera wszystkie możliwe do zainstalowania aktywatory powiązane z bieżącym projektem i bieżącym użytkownikiem.
Logger.log('Current project has ' + ScriptApp.getProjectTriggers().length + ' triggers.');
Powrót
Trigger[]
– tablica aktywatorów bieżącego użytkownika powiązanych z tym projektem.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/script.scriptapp
getScriptId()
Pobiera unikalny identyfikator projektu skryptu. Jest to preferowana metoda uzyskiwania unikalnego identyfikatora
dla projektu skryptu, a nie
. Tego identyfikatora można używać we wszystkich miejscach
gdzie podano wcześniej klucz projektu.getProjectKey()
Powrót
String
– identyfikator projektu skryptu.
getService()
Pobiera obiekt używany do sterowania publikowaniem skryptu jako aplikacji internetowej.
// Get the URL of the published web app. var url = ScriptApp.getService().getUrl();
Powrót
Service
– obiekt służący do obserwowania i kontrolowania publikowania skryptu jako aplikacji internetowej.
getUserTriggers(document)
Pobiera wszystkie instalowalne aktywatory należące do tego użytkownika w danym dokumencie dla tego skryptu lub tylko dodatek. Tej metody nie można użyć, aby zobaczyć aktywatory dołączone do innych skryptów.
var doc = DocumentApp.getActiveDocument(); var triggers = ScriptApp.getUserTriggers(doc); // Log the handler function for the first trigger in the array. Logger.log(triggers[0].getHandlerFunction());
Parametry
Nazwa | Typ | Opis |
---|---|---|
document | Document | Plik Dokumentów Google, który może zawierać aktywatory możliwe do zainstalowania. |
Powrót
Trigger[]
– tablica aktywatorów należących do użytkownika w danym dokumencie.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/script.scriptapp
getUserTriggers(form)
Pobiera wszystkie instalowalne aktywatory należące do tego użytkownika w podanym formularzu dla tego skryptu lub dodatku Tej metody nie można użyć, aby zobaczyć aktywatory dołączone do innych skryptów.
var form = FormApp.getActiveForm(); var triggers = ScriptApp.getUserTriggers(form); // Log the trigger source for the first trigger in the array. Logger.log(triggers[0].getTriggerSource());
Parametry
Nazwa | Typ | Opis |
---|---|---|
form | Form | Plik Formularzy Google, który może zawierać aktywatory możliwe do zainstalowania. |
Powrót
Trigger[]
– tablica aktywatorów należących do tego użytkownika w podanym formularzu.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/script.scriptapp
getUserTriggers(spreadsheet)
Pobiera wszystkie instalowalne aktywatory należące do tego użytkownika w danym arkuszu kalkulacyjnym dla tego skryptu lub tylko dodatek. Tej metody nie można użyć, aby zobaczyć aktywatory dołączone do innych skryptów.
var ss = SpreadsheetApp.getActiveSpreadsheet(); var triggers = ScriptApp.getUserTriggers(ss); // Log the event type for the first trigger in the array. Logger.log(triggers[0].getEventType());
Parametry
Nazwa | Typ | Opis |
---|---|---|
spreadsheet | Spreadsheet | Plik Arkuszy Google, który może zawierać aktywatory możliwe do zainstalowania. |
Powrót
Trigger[]
– tablica aktywatorów należących do użytkownika w danym arkuszu kalkulacyjnym.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/script.scriptapp
invalidateAuth()
Unieważnia autoryzację, którą musi wykonać rzeczywisty użytkownik, aby wykonać bieżący skrypt. Używane do unieważni wszystkie uprawnienia bieżącego skryptu. Jest to szczególnie przydatne w przypadku funkcji została oznaczona jako jednorazowa autoryzacja. Ponieważ funkcje autoryzacji jednorazowej mogą być wywoływane tylko przez funkcję pierwsze uruchomienie po uzyskaniu autoryzacji skryptu (jeśli chcesz wykonać działanie) musisz unieważnić autoryzację skryptu, by użytkownik mógł zobaczyć ponownie w oknie autoryzacji.
ScriptApp.invalidateAuth();
Rzuty
Error
– gdy nie uda się unieważnić.
newStateToken()
Tworzy kreator dla tokena stanu, którego można używać w interfejsie API z wywołaniem zwrotnym (np. w przepływie OAuth).
// Generate a callback URL, given the name of a callback function. The script does not need to // be published as a web app; the /usercallback URL suffix replaces /edit in any script's URL. function getCallbackURL(callbackFunction) { // IMPORTANT: Replace string below with the URL from your script, minus the /edit at the end. var scriptUrl = 'https://script.google.com/macros/d/1234567890abcdefghijklmonpqrstuvwxyz'; var urlSuffix = '/usercallback?state='; var stateToken = ScriptApp.newStateToken() .withMethod(callbackFunction) .withTimeout(120) .createToken(); return scriptUrl + urlSuffix + stateToken; }
W większości przepływów OAuth2 token state
jest przekazywany do punktu końcowego autoryzacji.
bezpośrednio (nie jako część adresu URL wywołania zwrotnego), a punkt końcowy autoryzacji przekazuje go jako
adresu URL wywołania zwrotnego.
Na przykład:
- Skrypt przekierowuje użytkownika do adresu URL autoryzacji OAuth2:
https://accounts.google.com/o/oauth2/auth?state=token_generated_with_this_method&callback_uri=https://script.google.com/macros/d/1234567890abcdefghijklmonpqrstuvwxyz/usercallback&other_oauth2_parameters
- Użytkownik klika opcję Autoryzuj, a strona autoryzacji OAuth2 przekierowuje go z powrotem na stronę
https://script.google.com/macros/d/1234567890abcdefghijklmonpqrstuvwxyz/usercallback?state=token_generated_with_this_method&other_params_that_include_tokens_or_grants
- Powyższe przekierowanie (z powrotem do
http://script.google.com/...
) sprawia, że przeglądarka do/usercallback
, które wywołuje metodę określoną przezStateTokenBuilder.withMethod(method)
.
Powrót
StateTokenBuilder
– obiekt służący do kontynuowania procesu tworzenia tokena stanowego.
newTrigger(functionName)
Rozpoczyna proces tworzenia instalacyjnego aktywatora, który po uruchomieniu wywołuje określoną funkcję.
// Creates an edit trigger for a spreadsheet identified by ID. ScriptApp.newTrigger('myFunction') .forSpreadsheet('1234567890abcdefghijklmnopqrstuvwxyz_a1b2c3') .onEdit() .create();
Parametry
Nazwa | Typ | Opis |
---|---|---|
functionName | String | Funkcja wywoływana po uruchomieniu reguły. Możesz używać funkcji z
uwzględnionych bibliotek, takich jak Library.libFunction1 . |
Powrót
TriggerBuilder
– obiekt używany do kontynuowania procesu tworzenia aktywatora.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/script.scriptapp