google.script.run
ist eine asynchrone clientseitige JavaScript API, die in
HTML-Dienstseiten, die serverseitiges Apps Script aufrufen können
Funktionen. So interagieren Sie auf Clientseite mit Dialogfeldern oder Seitenleisten in Google Docs, Google Tabellen oder Google Formulare:
Code eingeben, verwenden Sie google.script.host
. Weitere Informationen finden Sie in der
Leitfaden zur Kommunikation mit Serverfunktionen
im HTML-Dienst.
Methoden
Methode | Rückgabetyp | Kurzbeschreibung |
---|---|---|
myFunction(...) (beliebige serverseitige Funktion) |
void |
Führt die serverseitige Apps Script-Funktion mit dem entsprechenden Namen aus. |
withFailureHandler(function) |
google.script.run |
Legt eine Callback-Funktion fest, die ausgeführt werden soll, wenn die serverseitige Funktion eine Ausnahme auslöst. |
withSuccessHandler(function) |
google.script.run |
Legt eine Callback-Funktion fest, die ausgeführt werden soll, wenn die serverseitige Funktion erfolgreich zurückgegeben wird. |
withUserObject(object) |
google.script.run |
Legt ein Objekt fest, das als zweiter Parameter an die Erfolgs- und Fehler-Handler übergeben wird. |
Detaillierte Dokumentation
myFunction(...)
(beliebige serverseitige Funktion)
Führt die serverseitige Apps Script-Funktion mit dem entsprechenden Namen aus.
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>
Parameter
Name | Typ | Beschreibung |
---|---|---|
... | Die meisten Typen sind legal, aber keine Date , Function ,
oder DOM-Element außer form ; siehe Beschreibung | Rechtliche Parameter sind JavaScript
Primitive wie Number , Boolean , String oder
null sowie JavaScript-Objekte und -Arrays, die aus Primitiven bestehen,
Objekte und Arrays. Ein form -Element innerhalb der Seite ist auch als Parameter zulässig, aber
darf es der einzige Parameter der Funktion sein. Anfragen schlagen fehl, wenn Sie versuchen, eine
Date , Function , DOM-Element außer form oder einem anderen
unzulässiger Typ, einschließlich unzulässiger Typen in Objekten oder Arrays. Objekte, die Kreislaufdiagramme erstellen
Referenzen schlagen ebenfalls fehl und nicht definierte Felder innerhalb von Arrays werden zu null . Beachten Sie, dass
wird ein an den Server übergebenes Objekt zu einer Kopie des Originals. Wenn eine Serverfunktion ein
-Objekt enthält und seine Eigenschaften ändert, sind die Eigenschaften auf dem Client nicht betroffen. |
Rückflug
void
: Diese Methode ist asynchron und gibt nicht direkt zurück. Die Funktion
kann eine serverseitige Funktion einen Wert an den Client als Parameter zurückgeben, der an einen
Erfolgs-Handler; gelten außerdem die Rückgabetypen
dieselben Einschränkungen wie für Parametertypen, mit der Ausnahme, dass form
-Elemente
Rückgabetyp
withFailureHandler(function)
Legt eine Callback-Funktion fest, die ausgeführt werden soll, wenn die serverseitige Funktion eine Ausnahme auslöst. Die
Error
-Objekt als erstes Argument an die Funktion übergeben wird, und der Parameter
Nutzerobjekt (falls vorhanden) wird als zweites Argument übergeben. Ohne
Fehler-Handler sind, werden Fehler in der JavaScript-Konsole protokolliert. Um dies zu überschreiben, rufen Sie
withFailureHandler(null)
oder geben Sie einen Fehler-Handler an, der nichts bewirkt.
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>
Parameter
Name | Typ | Beschreibung |
---|---|---|
function | Function | eine clientseitige Callback-Funktion verwendet,
ausgeführt, wenn die serverseitige Funktion eine Ausnahme auslöst die
Error
-Objekt als erstes Argument an die Funktion übergeben wird, und der Parameter
Nutzerobjekt (falls vorhanden) wird als zweites Argument übergeben |
Rückflug
google.script.run
– dieser "Script Runner", zum Verkettungen
withSuccessHandler(function)
Legt eine Callback-Funktion fest, die ausgeführt werden soll, wenn die serverseitige Funktion erfolgreich zurückgegeben wird. Die wird der Rückgabewert als erstes Argument an die Funktion übergeben, und der Nutzerobjekt (falls vorhanden) wird als zweites Argument übergeben.
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>
Parameter
Name | Typ | Beschreibung |
---|---|---|
function | Function | eine clientseitige Callback-Funktion verwendet, ausgeführt, wenn die serverseitige Funktion erfolgreich zurückgegeben wird; wird der Rückgabewert des Servers an den als erstes Argument und das Nutzerobjekt (falls vorhanden) wird als zweites Argument übergeben. |
Rückflug
google.script.run
– dieser "Script Runner", zum Verkettungen
withUserObject(object)
Legt ein Objekt fest, das als zweiter Parameter an die Erfolgs- und Fehler-Handler übergeben wird. Dieser „Nutzer
object" – nicht zu verwechseln mit dem
Die Klasse User
– ermöglicht den Callback
-Funktionen auf den Kontext reagieren, in dem der Client den Server kontaktiert hat. Da Nutzerobjekte
nicht an den Server gesendet werden, unterliegen sie nicht den Beschränkungen für Parameter und
Werte für Serveraufrufe Nutzerobjekte können jedoch keine Objekte sein.
erstellt mit dem new
-Operator.
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()" /> <input type="button" value="Not Clicked" onclick="google.script.run .withSuccessHandler(updateButton) .withUserObject(this) .getEmail()" /> </body> </html>
Parameter
Name | Typ | Beschreibung |
---|---|---|
object | Object | Ein Objekt, das als zweiter Parameter übergeben werden soll.
Erfolgs- und Fehler-Handlern behandelt; da Nutzerobjekte nicht an den Server gesendet werden,
unterliegen den Einschränkungen für Parameter und Rückgabewerte für
Serveraufrufe. Nutzerobjekte können jedoch nicht konstruiert werden.
mit dem Operator new |
Rückflug
google.script.run
– dieser "Script Runner", zum Verkettungen