Class Session

Sesja

Klasa Session zapewnia dostęp do informacji o sesji, takich jak adres e-mail użytkownika (w niektórych przypadkach) i ustawienie języka.

Metody

MetodaZwracany typKrótki opis
getActiveUser()UserPobiera informacje o bieżącym użytkowniku.
getActiveUserLocale()StringPobiera ustawienie języka bieżącego użytkownika w postaci ciągu znaków, np. en w przypadku języka angielskiego.
getEffectiveUser()UserPobiera informacje o użytkowniku, w imieniu którego działa skrypt.
getScriptTimeZone()StringPobiera strefę czasową skryptu.
getTemporaryActiveUserKey()StringPobiera tymczasowy klucz, który jest unikalny dla aktywnego użytkownika, ale nie ujawnia jego tożsamości.

Szczegółowa dokumentacja

getActiveUser()

Pobiera informacje o bieżącym użytkowniku. Jeśli zasady bezpieczeństwa nie zezwalają na dostęp do tożsamości użytkownika, User.getEmail() zwraca pusty ciąg znaków. Okoliczności, w których adres e-mail jest dostępny, są różne. Na przykład adres e-mail użytkownika nie jest dostępny w żadnym kontekście, który umożliwia uruchomienie skryptu bez autoryzacji użytkownika, np. w przypadku prostego wyzwalacza onOpen(e) lub onEdit(e), funkcji niestandardowej w Arkuszach Google czy aplikacji internetowej wdrożonej w trybie „wykonuj jako ja” (czyli autoryzowanej przez dewelopera, a nie przez użytkownika). Te ograniczenia zwykle nie obowiązują jednak, jeśli deweloper sam uruchamia skrypt lub należy do tej samej domeny Google Workspace co użytkownik.

// Log the email address of the person running the script.
const email = Session.getActiveUser().getEmail();
Logger.log(email);

Powrót

User – bieżący użytkownik

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

  • https://www.googleapis.com/auth/userinfo.email

getActiveUserLocale()

Pobiera ustawienie języka bieżącego użytkownika w postaci ciągu znaków, np. en w przypadku języka angielskiego.

// Log the language setting of the person running the script.
Logger.log(Session.getActiveUserLocale());

Powrót

String – ciąg znaków reprezentujący ustawienie języka użytkownika.


getEffectiveUser()

Pobiera informacje o użytkowniku, w imieniu którego działa skrypt. Jeśli skrypt jest aplikacją internetową ustawioną na „wykonaj jako ja” (deweloper), zwraca konto użytkownika dewelopera. Jeśli skrypt jest uruchamiany w ramach instalowanego wyzwalacza, zwraca konto użytkownika, który utworzył wyzwalacz. W większości innych przypadków zwraca to samo konto co getActiveUser().

// Log the email address of the user under whose authority the script is
// running.
const email = Session.getEffectiveUser().getEmail();
Logger.log(email);

Powrót

User – użytkownik, w imieniu którego działa skrypt.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

  • https://www.googleapis.com/auth/userinfo.email

getScriptTimeZone()

Pobiera strefę czasową skryptu. Nowe skrypty domyślnie korzystają ze strefy czasowej właściciela, ale można ją zmienić, klikając Plik > Właściwości projektu w edytorze skryptów. Pamiętaj, że arkusze kalkulacyjne mają osobną strefę czasową, którą możesz zmienić, klikając Plik > Ustawienia arkusza kalkulacyjnego w Arkuszach Google. Strefy czasowe arkusza kalkulacyjnego, które różnią się od strefy czasowej skryptu, są częstym źródłem błędów w skryptach.

// Log the time zone of the script.
const timeZone = Session.getScriptTimeZone();
Logger.log(timeZone);

Powrót

String – strefa czasowa skryptu.


getTemporaryActiveUserKey()

Pobiera tymczasowy klucz, który jest unikalny dla aktywnego użytkownika, ale nie ujawnia jego tożsamości. Klucz tymczasowy jest zmieniany co 30 dni i jest unikalny dla danego skryptu.

// Log the temporary key of the person running the script.
Logger.log(Session.getTemporaryActiveUserKey());

Powrót

String – tymczasowy klucz aktywnego użytkownika.

Wycofane metody