توفّر فئة Session إمكانية الوصول إلى معلومات الجلسة، مثل عنوان البريد الإلكتروني للمستخدم (في بعض الحالات) وإعدادات اللغة.
الطُرق
الطريقة | نوع القيمة التي يتم عرضها | وصف قصير |
---|---|---|
get | User | الحصول على معلومات عن المستخدم الحالي |
get | String | تحصل على إعدادات اللغة للمستخدم الحالي كسلسلة، على سبيل المثال، en للغة الإنجليزية. |
get | User | تحصل على معلومات عن المستخدم الذي يتم تشغيل النص البرمجي بموجب سلطته. |
get | String | تحصل على المنطقة الزمنية للنص البرمجي. |
get | String | الحصول على مفتاح مؤقت فريد للمستخدم النشط ولكن لا يكشف هوية المستخدم |
مستندات تفصيلية
get Active User()
للحصول على معلومات عن المستخدم الحالي إذا كانت سياسات الأمان لا تسمح بالوصول إلى هوية
المستخدم، تعرض User.getEmail()
سلسلة فارغة. تختلف الظروف التي يكون فيها عنوان البريد الإلكتروني متاحًا: على سبيل المثال، لا يتوفّر عنوان البريد الإلكتروني للمستخدم في أي سياق يسمح بتشغيل نص برمجي بدون تفويض هذا المستخدم، مثل عامل تشغيل on
أو on
بسيط أو دالة مخصّصة في "جداول بيانات Google" أو تطبيق ويب تم نشره "للتنفيذ بالنيابة عني" (أي أنّ المطوّر هو من أذن به بدلاً من المستخدم).
ومع ذلك، لا تنطبق هذه القيود بشكل عام إذا كان المطوّر يشغّل النص البرمجي بنفسه
أو كان ينتمي إلى نطاق Google Workspace نفسه الذي ينتمي إليه المستخدم.
// Log the email address of the person running the script. const email = Session.getActiveUser().getEmail(); Logger.log(email);
الإرجاع
User
: المستخدم الحالي
التفويض
تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/userinfo.email
get Active User Locale()
تحصل على إعدادات اللغة للمستخدم الحالي كسلسلة، على سبيل المثال، en
للغة الإنجليزية.
// Log the language setting of the person running the script. Logger.log(Session.getActiveUserLocale());
الإرجاع
String
: سلسلة تمثّل إعدادات لغة المستخدم
get Effective User()
تحصل على معلومات عن المستخدم الذي يتم تشغيل النص البرمجي بموجب سلطته. إذا كان النص البرمجي هو
تطبيق ويب تم ضبطه على "التنفيذ بصفتي" (المطوّر)، سيؤدي ذلك إلى عرض حساب مستخدم المطوّر. إذا كان
النص البرمجي قيد التشغيل ضمن مشغِّل
عمل قابل للتثبيت، سيؤدي ذلك إلى عرض حساب المستخدم الذي أنشأ مشغِّل العمل. في معظم
السيناريوهات الأخرى، يعرض هذا الحقل الحساب نفسه الذي يعرضه get
.
// Log the email address of the user under whose authority the script is // running. const email = Session.getEffectiveUser().getEmail(); Logger.log(email);
الإرجاع
User
: المستخدم الذي يتم تشغيل النص البرمجي بموجب سلطته
التفويض
تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/userinfo.email
get Script Time Zone()
تحصل على المنطقة الزمنية للنص البرمجي. يتم ضبط النصوص البرمجية الجديدة تلقائيًا على المنطقة الزمنية للمالك، ولكن يمكن تغيير المنطقة الزمنية للنصوص البرمجية بالنقر على الملف > خصائص المشروع في محرِّر النصوص البرمجية. يُرجى العِلم أنّ جداول البيانات لها منطقة زمنية منفصلة، ويمكن تغييرها من خلال النقر على ملف > إعدادات جدول البيانات في "جداول بيانات Google". إنّ المناطق الزمنية في جدول البيانات التي تختلف عن المنطقة الزمنية للنص البرمجي هي مصدر شائع لأخطاء النصوص البرمجية.
// Log the time zone of the script. const timeZone = Session.getScriptTimeZone(); Logger.log(timeZone);
الإرجاع
String
: المنطقة الزمنية للنص البرمجي
get Temporary Active User Key()
الحصول على مفتاح مؤقت فريد للمستخدم النشط ولكن لا يكشف هوية المستخدم يتم تغيير المفتاح المؤقت كل 30 يومًا، وهو فريد للنص البرمجي.
// Log the temporary key of the person running the script. Logger.log(Session.getTemporaryActiveUserKey());
الإرجاع
String
: مفتاح المستخدم النشط المؤقت