Class Session

Oturum

Oturum sınıfı, kullanıcının e-posta adresi (bazı durumlarda) ve dil ayarı gibi oturum bilgilerine erişim sağlar.

Yöntemler

YöntemDönüş türüKısa açıklama
getActiveUser()UserMevcut kullanıcı hakkında bilgi alır.
getActiveUserLocale()StringMevcut kullanıcının dil ayarını dize olarak alır (ör. İngilizce için en).
getEffectiveUser()UserKomut dosyasının yetkilendirdiği kullanıcı hakkında bilgi alır.
getScriptTimeZone()StringKomut dosyasının saat dilimini alır.
getTemporaryActiveUserKey()StringEtkin kullanıcıya özgü ancak kullanıcı kimliğini göstermeyen geçici bir anahtar alır.

Ayrıntılı dokümanlar

getActiveUser()

Mevcut kullanıcı hakkında bilgi alır. Güvenlik politikaları kullanıcının kimliğine erişime izin vermiyorsa User.getEmail() boş bir dize döndürür. E-posta adresinin kullanılabildiği durumlar değişiklik gösterir: Örneğin, kullanıcının e-posta adresi, bir komut dosyasının ilgili kullanıcının yetkilendirmesi olmadan çalışmasına izin veren herhangi bir bağlamda kullanılamaz (ör. basit bir onOpen(e) veya onEdit(e) tetikleyici, Google E-Tablolar'daki özel bir işlev ya da "benim adıma çalıştır" (yani kullanıcı yerine geliştirici tarafından yetkilendirilmiş) olarak dağıtılan bir web uygulaması). Ancak geliştirici komut dosyasını kendisi çalıştırırsa veya kullanıcıyla aynı Google Workspace alanına aitse bu kısıtlamalar genellikle geçerli olmaz.

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

Return

User: Geçerli kullanıcı

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

getActiveUserLocale()

Mevcut kullanıcının dil ayarını dize olarak alır (ör. İngilizce için en).

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

Return

String: Kullanıcının dil ayarını temsil eden bir dize


getEffectiveUser()

Komut dosyasının yetkilendirdiği kullanıcı hakkında bilgi alır. Komut dosyası, "benim adıma çalıştır" (geliştirici) olarak ayarlanmış bir web uygulamasıysa geliştiricinin kullanıcı hesabını döndürür. Komut dosyası bir yüklenebilir tetikleyici altında çalışıyorsa tetikleyiciyi oluşturan kullanıcının hesabını döndürür. Diğer senaryoların çoğunda bu, getActiveUser() ile aynı hesabı döndürür.

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

Return

User: Komut dosyasının yetkilendirdiği kullanıcı

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

getScriptTimeZone()

Komut dosyasının saat dilimini alır. Yeni komut dosyaları varsayılan olarak sahibin saat dilimini kullanır ancak komut dosyasının saat dilimi, komut dosyası düzenleyicisinde Dosya > Proje özellikleri'ni tıklayarak değiştirilebilir. E-tabloların ayrı bir saat dilimi olduğunu ve bu saat dilimini Google E-Tablolar'da Dosya > E-tablo ayarları'nı tıklayarak değiştirebileceğinizi unutmayın. Komut dosyası saat diliminden farklı e-tablo saat dilimleri, komut dosyası hatalarının sık karşılaşılan bir nedenidir.

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

Return

String: Komut dosyasının saat dilimi


getTemporaryActiveUserKey()

Etkin kullanıcıya özgü ancak kullanıcı kimliğini göstermeyen geçici bir anahtar alır. Geçici anahtar 30 günde bir döndürülür ve komut dosyasına özgüdür.

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

Return

String: Geçici etkin kullanıcı anahtarı

Kullanımdan kaldırılan yöntemler