google.script.run est une API JavaScript asynchrone côté client, disponible dans
  Pages de services HTML pouvant appeler Apps Script côté serveur
  fonctions. Pour interagir avec les boîtes de dialogue ou les barres latérales dans Google Docs, Sheets ou Forms côté client
  utilisez google.script.host. Pour en savoir plus, consultez les
  guide de communication avec les fonctions de serveur
  dans le service HTML.
Méthodes
| Méthode | Type renvoyé | Brève description | 
|---|---|---|
| myFunction(...)(n'importe quelle fonction côté serveur) | void | Exécute la fonction Apps Script côté serveur avec le nom correspondant. | 
| withFailureHandler(function) | google.script.run | Définit une fonction de rappel à exécuter si la fonction côté serveur génère une exception. | 
| withSuccessHandler(function) | google.script.run | Définit une fonction de rappel à exécuter si la fonction côté serveur aboutit. | 
| withUserObject(object) | google.script.run | Définit un objet à transmettre en tant que deuxième paramètre aux gestionnaires de réussite et d'échec. | 
Documentation détaillée
myFunction(...) (n'importe quelle fonction côté serveur)
Exécute la fonction Apps Script côté serveur avec le nom correspondant.
Code.gs
function doGet() {
  return HtmlService.createHtmlOutputFromFile('Index');
}
function doSomething() {
  Logger.log('I was called!');
}Index.html
<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
    <script>
      google.script.run.doSomething();
    </script>
  </head>
  <body>
  </body>
</html>Paramètres
| Nom | Type | Description | 
|---|---|---|
| ... | La plupart des types sont légaux, mais pas Date,Function,
  ou DOM autre queform; voir la description | Les paramètres juridiques sont JavaScript
  primitives telles que Number,Boolean,Stringounull, ainsi que des objets et des tableaux JavaScript composés de primitives,
  des objets et des tableaux. Un élémentformde la page est également autorisé en tant que paramètre, mais
  il doit s'agir du seul paramètre de la fonction. Les requêtes échouent si vous tentez de transmettre unDate,Function, élément DOM en dehors d'unformou autre
  type interdit, y compris les types interdits dans les objets ou les tableaux Objets créant un cercle
  les références échouent également, et les champs non définis dans les tableaux deviennentnull. Notez que
  un objet transmis au serveur devient une copie de l'original. Si une fonction serveur reçoit une
  et modifie ses propriétés, les propriétés du client ne sont pas affectées. | 
Renvois
void : cette méthode est asynchrone et ne renvoie pas directement de résultat. Toutefois,
  la fonction côté serveur peut renvoyer une valeur au client sous la forme d'un paramètre transmis à
  successmanager; De plus, les types renvoyés sont soumis au
  les mêmes restrictions que les types de paramètres, à la différence qu'un élément form n'est pas
  type renvoyé
withFailureHandler(function)
Définit une fonction de rappel à exécuter si la fonction côté serveur génère une exception. La
  Error
  est transmis à la fonction en tant que premier argument, et l'objet
  L'objet utilisateur (le cas échéant) est transmis en tant que deuxième argument. Sans
  un gestionnaire d'échecs, les échecs sont consignés dans la console JavaScript. Pour modifier ce paramètre, appelez
  withFailureHandler(null) ou fournir un gestionnaire d'échecs qui n'a aucun effet.
Code.gs
function doGet() {
  return HtmlService.createHtmlOutputFromFile('Index');
}
function getUnreadEmails() {
  // 'got' instead of 'get' will throw an error.
  return GmailApp.gotInboxUnreadCount();
}Index.html
<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
    <script>
      function onFailure(error) {
        var div = document.getElementById('output');
        div.innerHTML = "ERROR: " + error.message;
      }
      google.script.run.withFailureHandler(onFailure)
          .getUnreadEmails();
    </script>
  </head>
  <body>
    <div id="output"></div>
  </body>
</html>Paramètres
| Nom | Type | Description | 
|---|---|---|
| function | Function | une fonction de rappel côté client pour
  s'exécute si la fonction côté serveur génère une exception. la Errorest transmis à la fonction en tant que premier argument, et l'objet
  L'objet utilisateur (le cas échéant) est transmis en tant que deuxième argument. | 
Renvois
google.script.run : cet "exécuteur de script" pour le chaînage
withSuccessHandler(function)
Définit une fonction de rappel à exécuter si la fonction côté serveur aboutit. Le serveur la valeur renvoyée est transmise à la fonction en tant que premier argument, et la valeur L'objet utilisateur (le cas échéant) est transmis en tant que deuxième argument.
Code.gs
function doGet() {
  return HtmlService.createHtmlOutputFromFile('Index');
}
function getUnreadEmails() {
  return GmailApp.getInboxUnreadCount();
}Index.html
<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
    <script>
      function onSuccess(numUnread) {
        var div = document.getElementById('output');
        div.innerHTML = 'You have ' + numUnread
            + ' unread messages in your Gmail inbox.';
      }
      google.script.run.withSuccessHandler(onSuccess)
          .getUnreadEmails();
    </script>
  </head>
  <body>
    <div id="output"></div>
  </body>
</html>Paramètres
| Nom | Type | Description | 
|---|---|---|
| function | Function | une fonction de rappel côté client pour est exécuté si la fonction côté serveur est renvoyée avec succès ; la valeur renvoyée par le serveur est transmise fonction comme premier argument et l'objet utilisateur (le cas échéant) est transmis en tant que deuxième argument | 
Renvois
google.script.run : cet "exécuteur de script" pour le chaînage
withUserObject(object)
Définit un objet à transmettre en tant que deuxième paramètre aux gestionnaires de réussite et d'échec. Cet "utilisateur"
  object" à ne pas confondre
  La classe User permet au rappel
  les fonctions répondent au contexte
dans lequel le client a contacté le serveur. Étant donné que les objets utilisateur
  ne sont pas envoyées au serveur, elles ne sont pas soumises aux restrictions des paramètres et renvoient
  pour les appels de serveur. Toutefois, les objets User ne peuvent pas être des objets
  construit avec l'opérateur new.
Code.gs
function doGet() {
  return HtmlService.createHtmlOutputFromFile('Index');
}
function getEmail() {
  return Session.getActiveUser().getEmail();
}Index.html
<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
    <script>
      function updateButton(email, button) {
        button.value = 'Clicked by ' + email;
      }
    </script>
  </head>
  <body>
    <input type="button" value="Not Clicked"
      onclick="google.script.run
          .withSuccessHandler(updateButton)
          .withUserObject(this)
          .getEmail()" />
  </body>
</html>Paramètres
| Nom | Type | Description | 
|---|---|---|
| object | Object | un objet à transmettre en tant que deuxième paramètre
  aux gestionnaires de réussite et d'échec ; car les objets utilisateur ne sont pas envoyés au serveur.
  sujet aux restrictions sur les paramètres et les valeurs de retour pour
  appels de serveur. Toutefois, les objets Utilisateur ne peuvent pas être des objets construits
  avec l'opérateur new | 
Renvois
google.script.run : cet "exécuteur de script" pour le chaînage