Class Session

Sesja

Klasa sesji zapewnia dostęp do informacji o sesji, takich jak adres e-mail użytkownika (w niektórych przypadkach) czy ustawienia 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, z którego uprawnieniami działa skrypt.
getScriptTimeZone()StringPobiera strefę czasową skryptu.
getTemporaryActiveUserKey()StringPobiera klucz tymczasowy, 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 zabezpieczeń nie zezwalają na dostęp do tożsamości użytkownika, User.getEmail() zwraca pusty ciąg znaków. Okoliczności, w jakich jest dostępny ten adres e-mail, mogą być różne, np. adres e-mail użytkownika jest niedostępny w żadnym kontekście umożliwiającym uruchomienie skryptu bez autoryzacji użytkownika, takim jak prosty wyzwalacz onOpen(e) lub onEdit(e), niestandardowa funkcja w Arkuszach Google czy aplikacja internetowa wdrożona w celu wykonania w Twoim imieniu (czyli autoryzowane przez dewelopera, a nie użytkownika). Ograniczenia te zwykle nie obowiązują, jeśli deweloper samodzielnie uruchamia skrypt lub należy do tej samej domeny Google Workspace co użytkownik.

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

Powroty

User – bieżący użytkownik,

Upoważnienie

Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym 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());

Powroty

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


getEffectiveUser()

Pobiera informacje o użytkowniku, z którego uprawnieniami działa skrypt. Jeśli skrypt jest aplikacją internetową z ustawieniem „Wykonaj jako ja” (deweloper), spowoduje wyświetlenie konta użytkownika dewelopera. Jeśli skrypt działa w ramach reguły możliwej do zainstalowania, zwracane jest konto użytkownika, który go utworzył. W większości innych scenariuszy zwraca to samo konto co getActiveUser().

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

Powroty

User – użytkownik, pod którego uprawnieniami działa skrypt.

Upoważnienie

Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

getScriptTimeZone()

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

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

Powroty

String – strefa czasowa skryptu;


getTemporaryActiveUserKey()

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

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

Powroty

String – tymczasowy aktywny klucz użytkownika.

Wycofane metody