Aplicaciones web

Organiza tus páginas con colecciones Guarda y categoriza el contenido según tus preferencias.

Si compilas una interfaz de usuario para una secuencia de comandos, puedes publicarla como una aplicación web. Por ejemplo, una secuencia de comandos que permita a los usuarios programar citas con miembros de un equipo de asistencia se presentaría mejor como una aplicación web, de modo que los usuarios puedan acceder a ella directamente desde sus navegadores.

Tanto las secuencias de comandos independientes como las secuencias de comandos vinculadas a Google Workspace aplicaciones se pueden convertir en aplicaciones web, siempre que cumplan con los siguientes requisitos.

Requisitos para aplicaciones web

Se puede publicar una secuencia de comandos como una aplicación web si cumple con estos requisitos:

parámetros de solicitud

Cuando un usuario visita una app o un programa, le envía una solicitud HTTP GET, Apps Script ejecuta la función doGet(e). Cuando un programa envía a la app una solicitud HTTP POST, Apps Script ejecuta doPost(e). En ambos casos, el argumento e representa un parámetro de evento que puede contener información sobre cualquier parámetro de solicitud. La estructura del objeto de evento se muestra en la siguiente tabla:

Campos
e.queryString

El valor de la parte de la cadena de consulta de la URL o null si no se especifica ninguna cadena

name=alice&n=1&n=2
e.parameter

Un objeto de pares clave-valor que corresponden a los parámetros de la solicitud. Solo se muestra el primer valor para los parámetros que tienen varios valores.

{"name": "alice", "n": "1"}
e.parameters

Un objeto similar a e.parameter, pero con un arreglo de valores para cada clave

{"name": ["alice"], "n": ["1", "2"]}
e.pathInfo

La ruta de URL después de /exec o /dev. Por ejemplo, si la ruta de URL termina en /exec/hello, la información de la ruta es hello.

e.contextPath No se utiliza, siempre es la string vacía.
e.contentLength

La longitud del cuerpo de la solicitud para las solicitudes POST o de -1 para las solicitudes GET

332
e.postData.length

Es igual a e.contentLength

332
e.postData.type

El tipo de MIME del cuerpo de POST

text/csv
e.postData.contents

El texto del contenido del cuerpo de POST

Alice,21
e.postData.name

Siempre el valor &post;postData"

postData

Por ejemplo, puedes pasar parámetros como username y age a una URL como se muestra a continuación:

https://script.google.com/.../exec?username=jsmith&age=21

Luego, puedes mostrar los parámetros de la siguiente manera:

function doGet(e) {
  var params = JSON.stringify(e);
  return HtmlService.createHtmlOutput(params);
}

En el ejemplo anterior, doGet(e) muestra el siguiente resultado:

{
  "queryString": "username=jsmith&age=21",
  "parameter": {
    "username": "jsmith",
    "age": "21"
  },
  "contextPath": "",
  "parameters": {
    "username": [
      "jsmith"
    ],
    "age": [
      "21"
    ]
  },
  "contentLength": -1
}

Implementa una secuencia de comandos como una aplicación web

Para implementar una secuencia de comandos como una aplicación web, sigue estos pasos:

  1. En la esquina superior derecha del proyecto de secuencia de comandos, haz clic en Implementar > Nueva implementación.
  2. Junto a "Seleccionar tipo", haz clic en Habilitar tipos de implementación > Web app.
  3. Ingresa la información sobre tu aplicación web en los campos en "Configuración de la implementación".
  4. Haga clic en Implementar.

Puedes compartir la URL de la aplicación web con las personas que deseas que usen tu app, siempre y cuando les hayas otorgado acceso.

Prueba una implementación de aplicación web

Para probar la secuencia de comandos como una aplicación web, sigue estos pasos:

  1. En la esquina superior derecha del proyecto de secuencia de comandos, haz clic en Implementar implementaciones de prueba.
  2. Junto a Seleccionar tipo, haz clic en Habilitar tipos de implementación aplicación web.
  3. En la URL de la aplicación web, haga clic en Copiar.
  4. Pega la URL en el navegador y prueba la aplicación web.

    Esta URL finaliza en /dev y solo pueden acceder los usuarios que tengan acceso de edición a la secuencia de comandos. Esta instancia de la app siempre ejecuta el código guardado más reciente y solo está destinada a pruebas durante el desarrollo.

Permisos

Los permisos para una aplicación web difieren según cómo elijas ejecutarla:

  • Ejecutar la aplicación como yo: En este caso, la secuencia de comandos siempre se ejecuta como tú, el propietario de la secuencia de comandos, sin importar quién acceda a la aplicación web.
  • Ejecuta la aplicación como usuario que accede a la aplicación web: en este caso, la secuencia de comandos se ejecuta con la identidad del usuario activo que utiliza la aplicación web. Este enfoque de permiso hace que la aplicación web muestre el correo electrónico del propietario de la secuencia de comandos cuando el usuario autoriza el acceso.

Incorporación de tu aplicación web en Google Sites

También puedes incorporar aplicaciones web en las versiones clásica y nueva de Google Sites.

Incorporación de una aplicación web en la nueva versión de Sites

Para incorporar una aplicación web, primero se debe implementar. También necesitas la URL implementada del diálogo Deploy.

Para incorporar una aplicación web en una página de Sites nueva, sigue estos pasos:

  1. Abre la página de Sites en la que deseas agregar la aplicación web.
  2. Selecciona Insertar URL.
  3. Pegue la URL de la aplicación web y, luego, haga clic en AGREGAR.

La aplicación web aparece en un marco en la vista previa de la página. Cuando publicas la página, es posible que los visitantes de tu sitio deban autorizar la aplicación web antes de que se ejecute normalmente. Las aplicaciones web no autorizadas presentan mensajes de autorización al usuario.

Incorporar una aplicación web en la versión clásica de Sites

Puedes vincular una secuencia de comandos a un sitio de la versión clásica de Google Sites de la misma manera en que puedes vincular una secuencia de comandos a un documento o a una hoja de cálculo de Google. Para crear una secuencia de comandos vinculada, visita tu sitio, haz clic en el ícono de ajustes Configuración y selecciona Administrar sitio. En la página Administrar sitio, haz clic en Apps Scripts en el panel de navegación izquierdo y, luego, en el botón Add new script. Se abrirá una secuencia de comandos nueva en el editor de Apps Script, en la que podrás implementar y codificar tu aplicación web.

También puedes incorporar tu aplicación web en una página. Puedes vincular la aplicación web al sitio o puedes usar cualquier aplicación web para la que tengas la URL. Para incorporar una aplicación web en una página de Google Sites, sigue estos pasos:

  1. Abre un sitio existente al que tengas acceso de edición o crea uno nuevo.
  2. Navega a la página de tu sitio en la que quieras incorporar la aplicación web.
  3. Haz clic en el ícono de edición y, luego, en Insertar &gt Google Apps Script.
  4. Elige la secuencia de comandos de la lista que representa tu aplicación web. Si tu aplicación web no está vinculada a este sitio, puedes pegar la URL de la aplicación web.
  5. Haz clic en el botón Seleccionar, elige las opciones que desees del diálogo siguiente y haz clic en Guardar.
  6. Guarda los cambios en la página y deberías ver tu aplicación web incorporada en tu página de Sites.

Aplicaciones web e historial de navegación

Puede ser conveniente que una aplicación web de Apps Script simule una aplicación de varias páginas o una con una IU dinámica controlada mediante parámetros de URL. Para hacerlo bien, puedes definir un objeto de estado a fin de representar la IU o la página de la app, y enviar el estado al historial del navegador a medida que el usuario navega por ella. También puedes escuchar los eventos del historial para que tu app web muestre la IU correcta cuando el usuario navega hacia atrás y hacia adelante con los botones del navegador. Si consultas los parámetros de URL en el momento de la carga, puedes hacer que tu app compile su IU de forma dinámica en función de esos parámetros, lo que le permite al usuario iniciar la app en un estado particular.

Apps Script proporciona dos API de JavaScript asíncronas del cliente para ayudar a crear aplicaciones web vinculadas al historial del navegador:

  • google.script.history proporciona métodos para permitir respuestas dinámicas a los cambios del historial del navegador. Esto incluye el envío de estados (objetos simples que puedes definir) al historial del navegador, el reemplazo del estado superior en la pila del historial y la configuración de una función de devolución de llamada del objeto de escucha para responder a los cambios del historial.

  • google.script.url proporciona los medios para recuperar los parámetros de URL y el fragmento de URL de la página actual, si están presentes.

Estas API de historial solo están disponibles para aplicaciones web. No son compatibles con barras laterales, diálogos ni complementos. Tampoco se recomienda usar esta funcionalidad en apps web incorporadas en Google Sites.