Enum SandboxMode

מצב Sandbox

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 יש הרבה פחות הגבלות מאשר במצבים האחרים של ארגז החול, והוא פועל במהירות הגבוהה ביותר, אבל הוא לא פועל בכלל בדפדפנים ישנים מסוימים, כולל Internet Explorer 9. אפשר לקרוא את מצב ארגז החול גם בסקריפט מצד הלקוח על ידי בדיקה של 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.

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

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