enum שמייצג את מצבי ארגז החול שבהם אפשר להשתמש בשביל 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 | מצב ארגז חול שמשתמש בארגז חול (sandboxing) של iframe במקום בטכנולוגיית ארגז החול של Caja שבה נעשה שימוש
אמצעי תחבורה EMULATED וNATIVE . המצב הזה הוא ברירת המחדל לסקריפטים חדשים נכון ל-
12 בנובמבר 2015 ולכל הסקריפטים החל מ-6 ביולי 2016.
במצב הזה יש הרבה פחות הגבלות בהשוואה למצבי ה-Sandbox האחרים, והוא פועל מהר יותר, אבל אינו פועל כלל בדפדפנים ישנים מסוימים, כולל Internet Explorer 9. |
NATIVE | Enum | מצב ארגז חול שמבוסס על המצב המחמיר ECMAScript 5. מצב ארגז חול המבוסס על
מצב מחמיר ECMAScript 5. המצב הזה כבר יצא משימוש
של 6 ביולי 2016. כל הסקריפטים מוגדרים עכשיו במצב IFRAME . |