enum שמייצג את מצבי Sandbox שאפשר להשתמש בהם בסקריפטים של HtmlService
מצד הלקוח. אפשר לגשת לערכים האלה מ-HtmlService.SandboxMode
ולהגדיר אותם באמצעות קריאה ל-HtmlOutput.setSandboxMode(mode)
.
כדי לקרוא למאפיין enum, צריך לקרוא לכיתה ההורה, לשם ולנכס שלו. לדוגמה,
HtmlService.SandboxMode.IFRAME
.
המצבים NATIVE
ו-EMULATED
הוצאו משימוש ב-13 באוקטובר 2015, והם לא זמינים יותר. עכשיו יש תמיכה רק במצב IFRAME
.
כדי להגן על המשתמשים מפני הצגת HTML או JavaScript זדוניים, קוד בצד הלקוח שמוצג משירות HTML מופעל בארגז חול אבטחה שמטיל הגבלות על הקוד. השיטה HtmlOutput.setSandboxMode(mode)
אפשרה בעבר לכותבי סקריפט לבחור בין גרסאות שונות של ארגז החול, אבל עכשיו אין לה השפעה. מידע נוסף זמין במדריך בנושא הגבלות בשירות HTML.
במצב IFRAME
יש הרבה פחות הגבלות מאשר במצבי Sandbox אחרים, והוא פועל במהירות הגבוהה ביותר, אבל הוא לא פועל בכלל בדפדפנים ישנים מסוימים, כולל Internet Explorer 9. אפשר לקרוא את המצב ב-sandbox גם בסקריפט מצד הלקוח על ידי בדיקה של google.script.sandbox.mode
. שימו לב שהמאפיין הזה מחזיר את המצב בפועל בלקוח, שעשוי להיות שונה מהמצב המבוקש בשרת אם המצב המבוקש לא נתמך בדפדפן של המשתמש.
<!-- Read the sandbox mode (in a client-side script). --> <script> alert(google.script.sandbox.mode); </script>
מאפיינים
נכס | סוג | תיאור |
---|---|---|
EMULATED | Enum | מצב ארגז חול מדור קודם שמחקה את המצב המחמיר של ECMAScript 5 באמצעות התכונות הזמינות רק ב-ECMAScript 3. המצב הזה היה ברירת המחדל לפני פברואר 2014.
|
IFRAME | Enum | מצב ארגז חול שבו נעשה שימוש בארגז חול של iframe במקום בטכנולוגיית ארגז החול של Caja שבה נעשה שימוש במצבים EMULATED ו-NATIVE . המצב הזה הוא ברירת המחדל לתסריטים חדשים החל מ-12 בנובמבר 2015, לכל התסריטים החל מ-6 ביולי 2016.
במצב הזה יש הרבה פחות הגבלות מאשר במצבי ה-sandbox האחרים, והוא פועל במהירות הגבוהה ביותר, אבל הוא לא פועל בכלל בדפדפנים ישנים מסוימים, כולל Internet Explorer 9. |
NATIVE | Enum | מצב ארגז חול שנבנה על גבי מצב קפדני של ECMAScript 5. מצב ארגז חול שנבנה על סמך מצב קפדני של ECMAScript 5. המצב הזה הוצא משימוש ב-6 ביולי 2016. כל הסקריפטים משתמשים עכשיו במצב IFRAME . |