Enum SandboxMode

SandboxMode

列舉代表用戶端 HtmlService 可使用的沙箱模式 指令碼這些值可以從 HtmlService.SandboxMode 存取,並藉由呼叫 HtmlOutput.setSandboxMode(mode)

如要呼叫列舉,您可以呼叫其父項類別、名稱和屬性。例如 HtmlService.SandboxMode.IFRAME

NATIVEEMULATED 模式已於 2015 年 10 月 13 日淘汰,兩者現已停用。僅限 現已支援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 嚴格模式,只使用可用的功能 。這是 2014 年 2 月前的預設模式。

EMULATED已於 12 月 10 日日落, 2015 年。所有嘗試使用 EMULATED 的指令碼現在都會改用 IFRAME

IFRAMEEnum採用 iframe 沙箱機制的沙箱模式,而非 EMULATEDNATIVE 模式。在此期間,新指令碼會預設使用這個模式: 2015 年 11 月 12 日,所有指令碼截至 2016 年 7 月 6 日為止。

與其他沙箱模式相比,這個模式施加的限制較少,而且執行速度最快, 無法在某些舊版瀏覽器上運作,包括 Internet Explorer 9。

NATIVEEnum以 ECMAScript 5 嚴格模式為基礎的沙箱模式。沙箱模式, ECMAScript 5 嚴格模式。此模式被停用為 2016 年 7 月 6 日。所有指令碼現在都使用 IFRAME 模式。