Enum SandboxMode

SandboxMode

Es una enumeración que representa los modos de zona de pruebas que se pueden usar para las secuencias de comandos HtmlService del cliente. Se puede acceder a estos valores desde HtmlService.SandboxMode y establecerlos llamando a HtmlOutput.setSandboxMode(mode).

Para llamar a una enumeración, debes llamar a su clase principal, nombre y propiedad. Por ejemplo,  HtmlService.SandboxMode.IFRAME.

Los modos NATIVE y EMULATED quedaron obsoletos el 13 de octubre de 2015 y ya no están disponibles. Ahora solo se admite el modo IFRAME.

Para proteger a los usuarios de que se les muestre código HTML o JavaScript malicioso, el código del cliente que se muestra desde el servicio HTML se ejecuta en una zona de pruebas de seguridad que impone restricciones al código. Anteriormente, el método HtmlOutput.setSandboxMode(mode) permitía a los autores de secuencias de comandos elegir entre diferentes versiones del entorno de pruebas, pero ahora no tiene ningún efecto. Para obtener más información, consulta la guía sobre las restricciones en el servicio HTML.

El modo IFRAME impone muchas menos restricciones que los otros modos de zona de pruebas y se ejecuta más rápido, pero no funciona en absoluto en algunos navegadores más antiguos, como Internet Explorer 9. El modo de zona de pruebas también se puede leer en una secuencia de comandos del cliente inspeccionando google.script.sandbox.mode. Ten en cuenta que esta propiedad devuelve el modo real en el cliente, que puede diferir del modo solicitado en el servidor si el modo solicitado no es compatible con el navegador del usuario.

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

Propiedades

PropiedadTipoDescripción
EMULATEDEnumEs un modo de zona de pruebas heredado que emula el modo estricto de ECMAScript 5 usando solo las funciones disponibles en ECMAScript 3. Este modo era el predeterminado antes de febrero de 2014.

EMULATED se descontinuó el 10 de diciembre de 2015. Todas las secuencias de comandos que intenten usar EMULATED ahora usarán IFRAME.

IFRAMEEnumModo de zona de pruebas que usa la zona de pruebas de iframe en lugar de la tecnología de zona de pruebas de Caja que usan los modos EMULATED y NATIVE. Este modo es el predeterminado para los scripts nuevos desde el 12 de noviembre de 2015 y para todos los scripts desde el 6 de julio de 2016.

Este modo impone muchas menos restricciones que los otros modos de zona de pruebas y se ejecuta más rápido, pero no funciona en absoluto en algunos navegadores más antiguos, como Internet Explorer 9.

NATIVEEnumUn modo de zona de pruebas que se basa en el modo estricto de ECMAScript 5. Es un modo de zona de pruebas compilado sobre el modo estricto de ECMAScript 5. Este modo se descontinuó el 6 de julio de 2016. Todas las secuencias de comandos ahora usan el modo IFRAME.