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 (örneğin, İngilizce için en).
getEffectiveUser()UserKomut dosyasının yetkisi altında çalıştırıldığı kullanıcı hakkında bilgi alır.
getScriptTimeZone()StringKomut dosyasının saat dilimini alır.
getTemporaryActiveUserKey()StringEtkin kullanıcıya özel olan ancak kullanıcı kimliğini ortaya çıkarmayan geçici bir anahtar alır.

Ayrıntılı belgeler

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, kullanıcının izni olmadan bir komut dosyasının çalışmasına izin veren hiçbir bağlamda (ör. basit bir onOpen(e) veya onEdit(e) tetikleyici, Google E-Tablolar'daki özel bir işlev ya da "benim adıma yürüt" olarak dağıtılan bir web uygulaması) kullanılamaz. Ancak, geliştirici komut dosyasını kendisi çalıştırıyorsa 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ı, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

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

getActiveUserLocale()

Mevcut kullanıcının dil ayarını dize olarak alır (örneğin, İ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 yetkisi altında çalıştırıldığı kullanıcı hakkında bilgi alır. Komut dosyası, "ben olarak çalıştır" (geliştirici) olarak ayarlanmış bir web uygulamasıysa bu işlev, geliştiricinin kullanıcı hesabını döndürür. Komut dosyası yüklenebilir tetikleyici altında çalışıyorsa bu işlev, tetikleyiciyi oluşturan kullanıcının hesabını döndürür. Diğer çoğu senaryoda bu işlev, 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 yetkisi altında çalıştığı kullanıcı

Yetkilendirme

Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

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

getScriptTimeZone()

Komut dosyasının saat dilimini alır. Yeni komut dosyaları varsayılan olarak sahibinin saat diliminde oluşturulur ancak komut dosyasının saat dilimi, komut dosyası düzenleyicide Dosya > Proje özellikleri'ni tıklayarak değiştirilebilir. E-tabloların ayrı bir saat dilimi olduğunu ve bu saat diliminin Google E-Tablolar'da Dosya > E-tablo ayarları'nı tıklayarak değiştirilebileceğini unutmayın. E-tablo saat dilimlerinin komut dosyası saat diliminden farklı olması, komut dosyası hatalarının sık görülen bir kaynağıdır.

// 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 özel olan ancak kullanıcı kimliğini ortaya çıkarmayan geçici bir anahtar alır. Geçici anahtar 30 günde bir döndürülür ve komut dosyasına özeldir.

// 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