Aplicativos da Web

Se você criar uma interface do usuário para um script, poderá publicá-lo como um app da Web. Por exemplo, um script que permite que os usuários agendem horários com membros de uma equipe de suporte seria melhor apresentado como um app da Web para que os usuários pudessem acessá-lo diretamente nos navegadores.

Tanto scripts autônomos quanto scripts vinculados a Google Workspace aplicativos podem ser transformados em apps da Web, desde que atendam aos requisitos abaixo.

Requisitos para apps da Web

Um script poderá ser publicado como app da Web se atender a estes requisitos:

Parâmetros de solicitação

Quando um usuário visita um app ou programa envia uma solicitação HTTP GET, o Apps Script executa a função doGet(e). Quando um programa envia ao app uma solicitação HTTP POST, o Apps Script executa doPost(e). Em ambos os casos, o argumento e representa um parâmetro de evento que pode conter informações sobre quaisquer parâmetros de solicitação. A estrutura do objeto de evento é mostrada na tabela abaixo:

Campos
e.queryString

O valor da parte da string de consulta do URL ou null se nenhuma string de consulta for especificada

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

Um objeto de pares de chave-valor que correspondem aos parâmetros da solicitação. Somente o primeiro valor é retornado para parâmetros com vários valores.

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

Um objeto semelhante a e.parameter, mas com uma matriz de valores para cada chave

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

O caminho do URL depois de /exec ou /dev. Por exemplo, se o caminho do URL terminar em /exec/hello, as informações do caminho serão hello.

e.contextPath Não usado, sempre a string vazia.
e.contentLength

O tamanho do corpo da solicitação POST ou -1 para solicitações GET

332
e.postData.length

O mesmo que e.contentLength

332
e.postData.type

O tipo MIME do corpo do POST

text/csv
e.postData.contents

O texto do conteúdo do corpo POST

Alice,21
e.postData.name

Sempre o valor "postData"

postData

Por exemplo, é possível transmitir parâmetros, como username e age, a um URL, conforme mostrado abaixo:

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

Em seguida, exiba os parâmetros da seguinte maneira:

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

No exemplo acima, doGet(e) retorna a seguinte saída:

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

Implantar um script como um app da Web

Para implantar um script como um app da Web, siga estas etapas:

  1. No canto superior direito do projeto de script, clique em Implantar > Nova implantação.
  2. Ao lado de "Selecionar tipo", clique em Ativar tipos de implantação > App da Web.
  3. Insira as informações do app da Web nos campos em "Configuração de implantação".
  4. Clique em Implantar.

Compartilhe o URL do app da Web com quem você quer usar, desde que tenha concedido acesso a ele.

Testar uma implantação de app da Web

Para testar o script como um app da Web, siga as etapas abaixo:

  1. No canto superior direito do projeto de script, clique em Implantar > Implantar implantações.
  2. Ao lado de "Selecionar tipo", clique em Ativar tipos de implantação > App da Web.
  3. Abaixo do URL do app da Web, clique em Copiar.
  4. Cole o URL no navegador e teste o app da Web.

    Esse URL termina em /dev e só pode ser acessado por usuários que têm acesso para editar o script. Essa instância do app sempre executa o código salvo mais recentemente e é destinada apenas para testes durante o desenvolvimento.

Permissões

As permissões de um app da Web variam de acordo com a forma de execução dele:

  • Execute o app como eu: nesse caso, o script sempre será executado como você, o proprietário do script, independentemente de quem acessar o app da Web.
  • Execute o app como usuário acessando o app da Web: nesse caso, o script é executado na identidade do usuário ativo usando o app da Web. Essa abordagem de permissão faz com que o app da Web mostre o e-mail do proprietário do script quando o usuário autoriza o acesso.

Como incorporar seu app da Web no Google Sites

Também é possível incorporar apps da Web nas versões clássica e nova do Google Sites.

Como incorporar um app da Web no novo Google Sites

Para incorporar um app da Web, ele precisa primeiro ser implantado. Você também precisa do URL implantado da caixa de diálogo Deploy.

Para incorporar um app da Web a uma página do novo Sites, siga estas etapas:

  1. Abra a página "Sites" em que você quer adicionar o app da Web.
  2. Selecione Inserir > URL incorporado.
  3. Cole o URL do app da Web e clique em ADICIONAR.

O app da Web aparece em um frame na visualização da página. Quando você publica a página, os leitores do site podem precisar autorizar o app da Web antes que ele seja executado normalmente. Apps da Web não autorizados apresentam solicitações de autorização ao usuário.

Incorporação do aplicativo da Web no Google Sites clássico

É possível vincular um script a um site Google clássico da mesma forma que um script a um arquivo do Documentos ou Planilhas Google. Para criar um script vinculado, acesse seu site, clique no ícone de engrenagem Configurações e selecione Gerenciar site. Na página "Gerenciar site", clique em Apps Script na navegação à esquerda e no botão Adicionar novo script. Isso abre um novo script no editor do Apps Script, em que você pode codificar e implantar seu app da Web.

Também é possível incorporar seu app da Web em uma página. Você pode vincular o app da Web ao site ou usar qualquer app da Web que tenha o URL. Para incorporar um app da Web a uma página do Google Sites, siga as etapas abaixo:

  1. Abra um site existente para o qual você tenha acesso de edição ou crie um novo site.
  2. Navegue até a página do site em que você quer incorporar o app da Web.
  3. Clique no ícone de edição e em Inserir > Google Apps Script.
  4. Na lista que representa seu app da Web, escolha o script. Se ele não estiver vinculado a esse site, cole o URL desse app.
  5. Clique no botão Selecionar, escolha as opções desejadas na próxima caixa de diálogo e clique em Salvar.
  6. Salve as alterações na página e você verá o app da Web incorporado à página Sites.

Histórico da Web e apps da Web

Pode ser desejável que um app da Web do Apps Script simule um aplicativo de várias páginas ou um com uma IU dinâmica controlada por parâmetros de URL. Para fazer isso bem, você pode definir um objeto de estado para representar a IU ou a página do app e enviar o estado para o histórico do navegador conforme o usuário navega pelo app. Também é possível detectar eventos históricos para que o app da Web exiba a IU correta quando o usuário navegar com os botões do navegador. Ao consultar os parâmetros de URL no momento do carregamento, você pode fazer com que o app crie dinamicamente a IU com base nesses parâmetros, permitindo que o usuário inicie o app em um estado específico.

O Apps Script oferece duas APIs JavaScript assíncronas do lado do cliente para ajudar na criação de apps da Web vinculados ao histórico do navegador:

  • O google.script.history oferece métodos para permitir a resposta dinâmica a mudanças no histórico do navegador. Isso inclui: envio de estados (objetos simples que você pode definir) para o histórico do navegador, substituição do estado superior na pilha de histórico e configuração de uma função de callback do listener para responder a mudanças de histórico.

  • google.script.url fornece os meios de recuperar os parâmetros de URL e fragmento de URL da página atual, se eles estiverem presentes.

Essas APIs de histórico estão disponíveis apenas para apps da Web. Elas não são compatíveis com barras laterais, caixas de diálogo ou complementos. Essa funcionalidade também não é recomendada para uso em apps da Web incorporados em um Google Sites.