Web-Apps

Wenn Sie eine Benutzeroberfläche für ein Skript erstellen, können Sie das Skript als Web-App. Ein Skript, mit dem Nutzer Termine mit sollten die Mitglieder eines Supportteams am besten als Web-App präsentiert werden, -Nutzer können direkt über ihren Browser darauf zugreifen.

Sowohl eigenständige Skripts als auch an Anwendungen Google Workspace gebundene Skripts können in Web-Apps zu erstellen, sofern sie die folgenden Anforderungen erfüllen.

Anforderungen für Web-Apps

Ein Skript kann als Web-App veröffentlicht werden, wenn es die folgenden Anforderungen erfüllt:

Anfrageparameter

Wenn ein Nutzer eine App besucht oder ein Programm eine HTTP-GET-Anfrage an die App sendet, Apps Script führt die Funktion doGet(e) aus. Wenn ein Programm eine HTTP-Anfrage an die App sendet POST-Anfrage, Apps Script führt stattdessen doPost(e) aus. In beiden Fällen wird die e -Argument steht für einen Ereignisparameter, der Informationen zu beliebigen Anforderungsparameter. Die Struktur des Ereignisobjekts wird in der Tabelle dargestellt. unten:

Felder
e.queryString

Der Wert des Abfragestringteils der URL oder null, wenn kein Abfragestring angegeben ist

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

Ein Objekt mit Schlüssel/Wert-Paaren, die den Anfrageparametern entsprechen. Bei Parametern mit mehreren Werten wird nur der erste Wert zurückgegeben.

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

Ein Objekt, das e.parameter ähnelt, aber ein Array von Werten für jeden Schlüssel enthält

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

Der URL-Pfad nach /exec oder /dev. Endet der URL-Pfad beispielsweise mit /exec/hello, wird der Pfadinformationen sind hello.

e.contextPath Wird nicht verwendet, immer ein leerer String.
e.contentLength

Die Länge des Anfragetexts für POST-Anfragen oder -1 für GET-Anfragen

332
e.postData.length

Identisch mit e.contentLength

332
e.postData.type

Der MIME-Typ des POST-Hauptteils

text/csv
e.postData.contents

Der Inhaltstext des POST-Hauptteils

Alice,21
e.postData.name

Immer der Wert „postData“

postData

Sie können beispielsweise Parameter wie username und age übergeben. in eine URL einfügen:

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

Anschließend können Sie die Parameter wie folgt anzeigen:

function doGet(e) {
  var params = JSON.stringify(e);
  return ContentService.createTextOutput(params).setMimeType(ContentService.MimeType.JSON);
}

Im obigen Beispiel gibt doGet(e) die folgende Ausgabe zurück:

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

Skript als Webanwendung bereitstellen

So stellen Sie ein Skript als Webanwendung bereit:

  1. Klicken Sie rechts oben im Skriptprojekt auf Bereitstellen > Neue Bereitstellung.
  2. Klicken Sie neben „Typ auswählen“ klicken Sie auf „Bereitstellungstypen aktivieren“ > Web-App:
  3. Geben Sie die Informationen zu Ihrer Webanwendung in die Felder unter „Bereitstellung Konfiguration.“
  4. Klicken Sie auf Bereitstellen.

Sie können die URL der Web-App mit Personen teilen, die Ihre App verwenden möchten, vorausgesetzt, Sie haben ihnen Zugriff gewährt.

Bereitstellung von Webanwendungen testen

So testen Sie Ihr Skript als Web-App:

  1. Klicken Sie rechts oben im Skriptprojekt auf Bereitstellen > Testen Bereitstellungen.
  2. Klicken Sie neben „Typ auswählen“ klicken Sie auf „Bereitstellungstypen aktivieren“ > Web-App.
  3. Klicken Sie unter der Web-App-URL auf Kopieren.
  4. Fügen Sie die URL in Ihren Browser ein und testen Sie Ihre Webanwendung.

    Diese URL endet auf /dev und kann nur von Nutzern mit Bearbeitungszugriff aufgerufen werden an das Skript übergeben. Diese Instanz der App führt immer die zuletzt gespeicherte Version aus. und ist nur für Tests während der Entwicklung vorgesehen.

Berechtigungen

Die Berechtigungen für eine Web-App unterscheiden sich je nach Ausführungsart der App:

  • App in meinem Namen ausführen: In diesem Fall führt das Skript immer aus. Sie als Eigentümer des Skripts, unabhängig davon, wer auf die Webanwendung zugreift.
  • App als Nutzer ausführen, der auf die Web-App zugreift – in diesem Fall das Skript wird unter der Identität des aktiven Nutzers ausgeführt, der die Webanwendung verwendet. Diese Berechtigung zeigt die Webanwendung die E-Mail-Adresse des Skripteigentümers an, autorisiert den Zugriff.

Webanwendung in Google Sites einbetten

Um eine Webanwendung in Google Sites einzubetten, muss sie zunächst bereitgestellt ist. Außerdem Sie benötigen die bereitgestellte URL aus dem Dialogfeld Deploy.

So betten Sie eine Webanwendung in Google Sites ein: führen Sie die folgenden Schritte aus:

  1. Öffnen Sie die Google Sites-Seite, auf der Sie die Web-App hinzufügen möchten.
  2. Wählen Sie Einfügen > URL einbetten:
  3. Fügen Sie die URL der Webanwendung ein und klicken Sie dann auf HINZUFÜGEN.

Die Web-App wird in der Vorschau der Seite in einem Frame angezeigt. Zeitpunkt der Veröffentlichung müssen die Besucher der Website die Web-App möglicherweise autorisieren, normal ausgeführt wird. Nicht autorisierte Web-Apps senden Autorisierungsanfragen an Nutzenden.

Web-Apps und Browserverlauf

Es kann wünschenswert sein, eine mehrseitige Web-App mit Apps Script zu simulieren oder mit einer dynamischen, über URL-Parameter gesteuerten UI. Um dies gut zu erreichen, können Sie ein state-Objekt definieren, das das Benutzeroberfläche oder Seite und übertragen Sie den Status als wie Nutzende durch Ihre App navigieren. Sie können auch Verlaufsereignisse überwachen, damit Ihr Web App die richtige Benutzeroberfläche anzeigt, wenn der Nutzer mit der Browserschaltflächen. Durch die Abfrage der URL-Parameter beim Laden können Ihre basierend auf diesen Parametern dynamisch ihre Benutzeroberfläche erstellen, die App in einem bestimmten Zustand starten.

Apps Script bietet zwei asynchrone, clientseitige JavaScript-APIs, Web-Apps erstellen, die mit dem Browserverlauf verknüpft sind:

  • google.script.history stellt Methoden zur Verfügung, die eine dynamische Reaktion auf Änderungen am Browserverlauf ermöglichen. Dieses Umfasst das Übertragen von Status (einfache Objekte, die Sie definieren können) an den Browser Verlauf, wobei der oberste Status im Verlaufsstapel ersetzt und ein Listener festgelegt wird verwenden, um auf Verlaufsänderungen zu reagieren.

  • google.script.url bietet die Methode zum Abrufen der URL-Parameter und des URL-Fragments der aktuellen Seite, wenn wenn sie präsent sind.

Diese Verlaufs-APIs sind nur für Web-Apps verfügbar. Sie sind nicht Seitenleisten, Dialogfeldern oder Add-ons unterstützt. Diese Funktion ist auch nicht empfohlen für Web-Apps, die in eine Google Sites-Website eingebettet sind.