Enum SandboxMode

מצב Sandbox

סוג enum שמייצג את מצבי ארגז החול שאפשר להשתמש בהם בסקריפטים HtmlServiceמצד הלקוח. אפשר לגשת לערכים האלה מ-HtmlService.SandboxMode ולהגדיר אותם באמצעות הקריאה ל-HtmlOutput.setSandboxMode(mode).

כדי לקרוא ל-enum, קוראים למחלקת האב, לשם ולמאפיין שלו. לדוגמה, HtmlService.SandboxMode.IFRAME.

הוצאנו משימוש את המצבים NATIVE ו-EMULATED ב- 13 באוקטובר 2015, ועכשיו הם כבר לא זמינים. עכשיו יש תמיכה רק במצב IFRAME.

כדי להגן על המשתמשים מפני קוד HTML או JavaScript זדוניים שמוצגים להם, קוד בצד הלקוח שמוצג משירות HTML מופעל בארגז חול מאובטח שמטיל הגבלות על הקוד. השיטה HtmlOutput.setSandboxMode(mode) אפשרה בעבר לכותבי סקריפטים לבחור בין גרסאות שונות של ארגז החול, אבל עכשיו אין לה השפעה. מידע נוסף זמין במדריך בנושא הגבלות בשירות HTML.

מצב IFRAME מטיל הרבה פחות הגבלות מאשר מצבי ארגז החול האחרים, והוא פועל הכי מהר, אבל הוא לא פועל בכלל בדפדפנים ישנים מסוימים, כולל Internet Explorer 9. אפשר גם לקרוא את מצב הארגז ב-script בצד הלקוח על ידי בדיקה של google.script.sandbox.mode. שימו לב שהמאפיין הזה מחזיר את המצב בפועל בלקוח, שיכול להיות שונה מהמצב שנדרש בשרת אם המצב שנדרש לא נתמך בדפדפן של המשתמש.

<!-- Read the sandbox mode (in a client-side script). -->
<script>
  alert(google.script.sandbox.mode);
</script>

מאפיינים

נכססוגתיאור
EMULATEDEnumמצב ארגז חול מדור קודם שמדמה מצב מחמיר של ECMAScript 5 באמצעות התכונות שזמינות ב-ECMAScript 3 בלבד. המצב הזה היה ברירת המחדל לפני פברואר 2014.

EMULATED יצא משימוש ב-10 בדצמבר 2015. כל הסקריפטים שמנסים להשתמש ב-EMULATED ישתמשו עכשיו ב-IFRAME במקום זאת.

IFRAMEEnumמצב ארגז חול שמשתמש בארגז חול של iframe במקום בטכנולוגיית ארגז החול של Caja שמשמשת במצבים EMULATED ו-NATIVE. החל מ-12 בנובמבר 2015, המצב הזה הוא ברירת המחדל לתסריטים חדשים, והחל מ-6 ביולי 2016 הוא ברירת המחדל לכל התסריטים.

במצב הזה יש הרבה פחות הגבלות מאשר במצבי ארגז חול אחרים, והוא פועל הכי מהר, אבל הוא לא פועל בכלל בדפדפנים ישנים מסוימים, כולל Internet Explorer 9.

NATIVEEnumמצב ארגז חול שמבוסס על מצב קפדני של ECMAScript 5. מצב ארגז חול שמבוסס על מצב קפדני של ECMAScript 5. המצב הזה יצא משימוש ב-6 ביולי 2016. כל הסקריפטים משתמשים עכשיו במצב IFRAME.