Applications Web

Si vous créez une interface utilisateur pour un script, vous pouvez le publier en tant que de votre application Web. Par exemple, un script qui permet aux utilisateurs de planifier des rendez-vous avec les membres d'une équipe d'assistance seraient présentés sous la forme d'une application Web afin que les utilisateurs peuvent y accéder directement depuis leur navigateur.

Les scripts autonomes et scripts liés aux Google Workspace applications peuvent être transformées en applications Web, à condition qu'elles répondent aux exigences ci-dessous.

Conditions requises pour les applications Web

Un script peut être publié en tant qu'application Web s'il répond aux exigences suivantes:

Paramètres de requête

Lorsqu'un utilisateur visite une application ou un programme envoie à l'application une requête HTTP GET, Apps Script exécute la fonction doGet(e). Lorsqu'un programme envoie à l'application un POST, Apps Script exécute doPost(e) à la place. Dans les deux cas, le e représente un paramètre d'événement pouvant contenir des informations sur paramètres de requête. La structure de l'objet événement est présentée dans le tableau ci-dessous:

Champs
e.queryString

Valeur de la partie chaîne de requête de l'URL, ou null si aucune chaîne de requête n'est spécifiée

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

Objet de paires clé/valeur correspondant aux paramètres de la requête. Seule la première valeur est renvoyée pour les paramètres comportant plusieurs valeurs.

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

Un objet semblable à e.parameter, mais avec un tableau de valeurs pour chaque clé

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

Chemin de l'URL après /exec ou /dev. Par exemple, si le chemin de l'URL se termine par /exec/hello, le les informations sur le chemin d'accès sont hello.

e.contextPath Non utilisé. Il s'agit toujours d'une chaîne vide.
e.contentLength

Longueur du corps de la requête pour les requêtes POST, ou -1 pour les requêtes GET

332
e.postData.length

Même chose que pour e.contentLength

332
e.postData.type

Type MIME du corps de la requête POST.

text/csv
e.postData.contents

Le texte du corps de la requête POST

Alice,21
e.postData.name

Toujours la valeur "postData"

postData

Par exemple, vous pouvez transmettre des paramètres tels que username et age. à une URL, comme indiqué ci-dessous:

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

Vous pouvez ensuite afficher les paramètres comme suit:

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

Dans l'exemple ci-dessus, doGet(e) renvoie le résultat suivant:

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

Déployer un script en tant qu'application Web

Pour déployer un script en tant qu'application Web, procédez comme suit:

  1. En haut à droite du projet de script, cliquez sur Déployer > Nouveau déploiement.
  2. À côté de "Sélectionner le type", cliquez sur "Activer les types de déploiement" > Application Web :
  3. Saisissez les informations concernant votre application Web dans les champs situés sous "Deployment" (Déploiement) configuration."
  4. Cliquez sur Déployer.

Vous pouvez partager l'URL de l'application Web avec les personnes avec lesquelles vous souhaitez l'utiliser, à condition que vous leur ayez accordé l'accès.

Tester le déploiement d'une application Web

Pour tester votre script en tant qu'application Web, procédez comme suit:

  1. En haut à droite du projet de script, cliquez sur Déployer > Tests déploiement.
  2. À côté de "Sélectionner le type", cliquez sur "Activer les types de déploiement" > Application Web
  3. Sous l'URL de l'application Web, cliquez sur Copier.
  4. Collez l'URL dans votre navigateur et testez votre application Web.

    Cette URL se termine par /dev et seuls les utilisateurs autorisés à le modifier peuvent y accéder au script. Cette instance de l'application exécute toujours la dernière version enregistrée code et est uniquement destiné à être testé pendant le développement.

Autorisations

Les autorisations pour une application Web diffèrent selon la manière dont vous choisissez d'exécuter l'application:

  • Exécuter l'application comme moi : dans ce cas, le script s'exécute toujours que vous, le propriétaire du script, peu importe qui accède à l'application Web.
  • Exécuter l'application en tant qu'utilisateur accédant à l'application Web : dans ce cas, le script s'exécute sous l'identité de l'utilisateur actif à l'aide de l'application Web. Cette autorisation l'application Web affiche l'adresse e-mail du propriétaire du script lorsque l'utilisateur autorise l'accès.

Intégrer votre application Web dans Google Sites

Pour intégrer une application Web dans Google Sites, elle doit d'abord être déployé. Vous avez également besoin de l'URL déployée dans la boîte de dialogue Deploy.

Pour intégrer une application Web dans un site , procédez comme suit:

  1. Ouvrez la page Google Sites sur laquelle vous souhaitez ajouter l'application Web.
  2. Sélectionnez Insertion > Intégrer une URL
  3. Collez l'URL de l'application Web, puis cliquez sur AJOUTER.

L'application Web apparaît dans un cadre de l'aperçu de la page. Date de publication la page, les visiteurs de votre site devront peut-être autoriser l'application Web s'exécute normalement. Les applications Web non autorisées présentent des invites d'autorisation à l'utilisateur.

Applications Web et historique du navigateur

Il peut être souhaitable qu'une application Web Apps Script simule une séquence de plusieurs pages ou avec une UI dynamique contrôlée par des paramètres d'URL. Pour bien faire cela, vous pouvez définir un objet d'état qui représente UI ou page, puis transférer l'état dans l'historique du navigateur en tant que parcourt votre application. Vous pouvez également écouter les événements de l'historique pour que votre navigateur l'application affiche la bonne UI lorsque l'utilisateur passe d'un écran à l'autre avec boutons du navigateur. En interrogeant les paramètres d'URL au moment du chargement, vous pouvez l'application crée son UI de manière dynamique en fonction de ces paramètres, ce qui permet à l'utilisateur démarrer l'application dans un état particulier.

Apps Script fournit deux API JavaScript côté client asynchrones pour vous aider concernant la création d'applications Web liées à l'historique du navigateur:

  • google.script.history propose des méthodes permettant d'obtenir une réponse dynamique aux modifications de l'historique du navigateur. Ce consiste à transmettre des états (objets simples que vous pouvez définir) dans le navigateur. en remplaçant l'état supérieur de la pile de l'historique et en définissant un écouteur de rappel pour répondre aux modifications de l'historique.

  • google.script.url fournit les moyens de récupérer les paramètres d'URL et le fragment d'URL de la page actuelle, si leur présence.

Ces API d'historique ne sont disponibles que pour les applications Web. Ce n'est pas le cas compatible avec les barres latérales, les boîtes de dialogue et les modules complémentaires. Cette fonctionnalité est également son utilisation n'est pas recommandée les applications Web intégrées à un site Google Sites.