Un objet HtmlOutput
qui peut être diffusé à partir d'un script. Pour des raisons de sécurité,
les scripts ne peuvent pas renvoyer directement du code HTML à un navigateur. Au lieu de cela, ils doivent
le nettoyer pour qu’il
ne peuvent pas commettre d'actions malveillantes. Vous pouvez renvoyer du code HTML nettoyé comme suit:
function doGet() { return HtmlService.createHtmlOutput('<b>Hello, world!</b>'); }
HtmlOutput
peut inclure du code JavaScript et CSS intégré. (Il s'agit d'une
du code JavaScript côté client qui manipule le DOM, et non Apps Script). Tout ce contenu est
en bac à sable avec iFrame
système de bac à sable. Pour en savoir plus, consultez le guide des restrictions applicables au service HTML.Méthodes
Méthode | Type renvoyé | Brève description |
---|---|---|
addMetaTag(name, content) | HtmlOutput | Ajoute une balise Meta à la page. |
append(addedContent) | HtmlOutput | Ajoute le nouveau contenu au contenu de ce HtmlOutput . |
appendUntrusted(addedContent) | HtmlOutput | Ajoute le nouveau contenu au contenu de ce HtmlOutput , à l'aide de l'échappement contextuel. |
asTemplate() | HtmlTemplate | Renvoie un HtmlTemplate sauvegardé par ce HtmlOutput . |
clear() | HtmlOutput | Efface le contenu actuel. |
getAs(contentType) | Blob | Renvoyez les données contenues dans cet objet sous la forme d'un blob converti dans le type de contenu spécifié. |
getBlob() | Blob | Renvoyez les données contenues dans cet objet sous forme de blob. |
getContent() | String | Récupère le contenu de ce HtmlOutput . |
getFaviconUrl() | String | Récupère l'URL d'une balise de lien de favicon ajoutée à la page en appelant setFaviconUrl(iconUrl) . |
getHeight() | Integer | Récupère la hauteur initiale de la boîte de dialogue personnalisée dans Google Docs, Sheets ou Forms. |
getMetaTags() | HtmlOutputMetaTag[] | Récupère un tableau d'objets représentant les balises Meta ajoutées à la page en appelant addMetaTag(name, content) . |
getTitle() | String | Récupère le titre de la page de sortie. |
getWidth() | Integer | Récupère la largeur initiale de la boîte de dialogue personnalisée dans Google. Docs, Sheets ou Forms. |
setContent(content) | HtmlOutput | Définit le contenu de cet élément HtmlOutput . |
setFaviconUrl(iconUrl) | HtmlOutput | Ajoute à la page une balise de lien pour un favicon. |
setHeight(height) | HtmlOutput | Définit la hauteur initiale de la boîte de dialogue personnalisée dans Google Docs, Sheets ou Forms. |
setSandboxMode(mode) | HtmlOutput | Cette méthode n'a plus aucun effet. Elle avait précédemment défini le sandbox
mode utilisé pour les scripts côté client. |
setTitle(title) | HtmlOutput | Définit le titre de la page de sortie. |
setWidth(width) | HtmlOutput | Définit la largeur initiale d'une boîte de dialogue personnalisée dans Google. Docs, Sheets ou Forms. |
setXFrameOptionsMode(mode) | HtmlOutput | Définit l'état de l'en-tête X-Frame-Options de la page, qui contrôle le détournement de clic.
la prévention. |
Documentation détaillée
addMetaTag(name, content)
Ajoute une balise Meta à la page. Les balises Meta incluses directement dans un fichier HTML Apps Script sont sont ignorées. Seules les balises Meta suivantes sont autorisées:
<meta name="apple-mobile-web-app-capable" content="..."/> <meta name="google-site-verification" content="..."/> <meta name="mobile-web-app-capable" content="..."/> <meta name="viewport" content="..."/>
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.addMetaTag('viewport', 'width=device-width, initial-scale=1');
Paramètres
Nom | Type | Description |
---|---|---|
name | String | Valeur de l'attribut "name" de la balise Meta. |
content | String | Valeur de l'attribut "content" de la balise Meta |
Renvois
HtmlOutput
: sortie pour le chaînage.
append(addedContent)
Ajoute le nouveau contenu au contenu de ce HtmlOutput
. N'utilisez cette option que pour le contenu d'une
fiable, car elle n'est pas protégée par échappement.
// Log "<b>Hello, world!</b><p>Hello again, world.</p>" var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.append('<p>Hello again, world.</p>'); Logger.log(output.getContent());
Paramètres
Nom | Type | Description |
---|---|---|
addedContent | String | Contenu à ajouter. |
Renvois
HtmlOutput
: sortie pour le chaînage.
Génère
Error
: si le format du code HTML est incorrect
Voir aussi
appendUntrusted(addedContent)
Ajoute le nouveau contenu au contenu de ce HtmlOutput
, à l'aide de l'échappement contextuel.
Cette méthode échappe correctement le contenu en fonction de l'état actuel de HtmlOutput
,
pour obtenir une chaîne sécurisée sans balisage ni effet latéral. Utilisez ceci à la place de
à ajouter chaque fois que vous ajoutez du contenu provenant d'une source non fiable, par exemple d'un utilisateur, pour éviter
autoriser accidentellement un bug de script intersites (XSS) dans lequel le contenu ou le balisage que vous ajoutez
entraîne une exécution inattendue du code.
// Log "<b>Hello, world!</b><p>Hello again, world.</p>" var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.appendUntrusted('<p>Hello again, world.</p>'); Logger.log(output.getContent());
Paramètres
Nom | Type | Description |
---|---|---|
addedContent | String | Contenu à ajouter. |
Renvois
HtmlOutput
: sortie pour le chaînage.
Génère
Error
: si le format HTML est très incorrect
Voir aussi
asTemplate()
Renvoie un HtmlTemplate
sauvegardé par ce HtmlOutput
. Cette méthode peut être utilisée pour
de créer un modèle de façon incrémentielle. Les futures modifications apportées à HtmlOutput
affecteront le contenu de
HtmlTemplate
également.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); var template = output.asTemplate();
Renvois
HtmlTemplate
: nouveau HtmlTemplate
.
clear()
Efface le contenu actuel.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.clear();
Renvois
HtmlOutput
: sortie pour le chaînage.
getAs(contentType)
Renvoyez les données contenues dans cet objet sous la forme d'un blob converti dans le type de contenu spécifié. Ce ajoute l'extension appropriée au nom du fichier (par exemple, "myfile.pdf"). Cependant, il suppose que la partie du nom de fichier qui suit le dernier point (le cas échéant) est une à remplacer. Par conséquent, "ShoppingList.12.25.2014" devient "ShoppingList.12.25.pdf".
Pour connaître les quotas quotidiens de conversion, consultez la page Quotas Services. Les domaines Google Workspace nouvellement créés peuvent être temporairement soumis à des règles des quotas.
Paramètres
Nom | Type | Description |
---|---|---|
contentType | String | Type MIME vers lequel effectuer la conversion. Pour la plupart des blobs, 'application/pdf' correspond à
est la seule option valide. Pour les images au format BMP, GIF, JPEG ou PNG, les valeurs 'image/bmp' , 'image/gif' , 'image/jpeg' ou 'image/png' le sont également.
valide. Pour un document Google Docs, 'text/markdown' est également valide. |
Renvois
Blob
: données sous forme de blob.
getBlob()
Renvoyez les données contenues dans cet objet sous forme de blob.
Renvois
Blob
: données sous forme de blob.
getContent()
Récupère le contenu de ce HtmlOutput
.
// Log "<b>Hello, world!</b>" var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); Logger.log(output.getContent());
Renvois
String
: contenu diffusé.
getFaviconUrl()
Récupère l'URL d'une balise de lien de favicon ajoutée à la page en appelant setFaviconUrl(iconUrl)
. Les balises de liens de favicon incluses directement dans un fichier HTML Apps Script sont
sont ignorées.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setFaviconUrl('http://www.example.com/image.png'); Logger.log(output.getFaviconUrl());
Renvois
String
: URL de l'image du favicon.
getHeight()
Récupère la hauteur initiale de la boîte de dialogue personnalisée dans Google
Docs, Sheets ou Forms. Si HtmlOutput
est publié en tant qu'application Web à la place, cette
renvoie null
. Pour redimensionner une boîte de dialogue déjà ouverte, appelez
google.script.host.setHeight(height)
dans le code côté client.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setHeight(200); Logger.log(output.getHeight());
Renvois
Integer
: hauteur, en pixels.
getMetaTags()
Récupère un tableau d'objets représentant les balises Meta ajoutées à la page en appelant addMetaTag(name, content)
. Les balises Meta incluses directement dans un fichier HTML Apps Script sont
sont ignorées.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.addMetaTag('viewport', 'width=device-width, initial-scale=1'); var tags = output.getMetaTags(); Logger.log('<meta name="%s" content="%s"/>', tags[0].getName(), tags[0].getContent());
Renvois
HtmlOutputMetaTag[]
: tableau d'objets représentant les balises Meta ajoutées à la page en appelant addMetaTag(name, content)
.
getTitle()
Récupère le titre de la page de sortie. Notez que la balise <title> L'élément HTML est ignoré.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); Logger.log(output.getTitle());
Renvois
String
: titre de la page.
getWidth()
Récupère la largeur initiale de la boîte de dialogue personnalisée dans Google.
Docs, Sheets ou Forms. Si HtmlOutput
est publié en tant qu'application Web à la place, cette
renvoie null
. Pour redimensionner une boîte de dialogue déjà ouverte, appelez
google.script.host.setWidth(width)
dans le code côté client.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setWidth(200); Logger.log(output.getWidth());
Renvois
Integer
: largeur en pixels.
setContent(content)
Définit le contenu de cet élément HtmlOutput
.
var output = HtmlService.createHtmlOutput(); output.setContent('<b>Hello, world!</b>');
Paramètres
Nom | Type | Description |
---|---|---|
content | String | Contenu à diffuser. |
Renvois
HtmlOutput
: sortie pour le chaînage.
Génère
Error
: si le format du code HTML est incorrect
setFaviconUrl(iconUrl)
Ajoute à la page une balise de lien pour un favicon. Balises de lien favicon incluses directement dans une application Le fichier HTML du script est ignoré.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setFaviconUrl('http://www.example.com/image.png');
Paramètres
Nom | Type | Description |
---|---|---|
iconUrl | String | URL de l'image du favicon, avec l'extension d'image indiquant l'image de mots clés. |
Renvois
HtmlOutput
: sortie pour le chaînage.
setHeight(height)
Définit la hauteur initiale de la boîte de dialogue personnalisée dans Google
Docs, Sheets ou Forms. Si HtmlOutput
est publié en tant qu'application Web à la place, cette
n'a aucun effet. Pour redimensionner une boîte de dialogue déjà ouverte, appelez
google.script.host.setHeight(height)
dans le code côté client.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setHeight(200);
Paramètres
Nom | Type | Description |
---|---|---|
height | Integer | Nouvelle hauteur en pixels. null génère une valeur par défaut. |
Renvois
HtmlOutput
: sortie pour le chaînage.
setSandboxMode(mode)
Cette méthode n'a plus aucun effet. Elle avait précédemment défini le sandbox
mode
utilisé pour les scripts côté client. Pour protéger les utilisateurs contre l'exposition de code HTML malveillant ou
Le code JavaScript côté client, diffusé à partir d'un service HTML, s'exécute dans un bac à sable de sécurité qui
impose des restrictions sur le code. À l'origine, cette méthode permettait aux auteurs de scripts de choisir
entre différentes versions du bac à sable, mais tous les scripts utilisent désormais le mode IFRAME
quel que soit le mode bac à sable défini. Pour en savoir plus, consultez le guide des restrictions applicables au service HTML.
Le mode IFRAME
impose beaucoup moins de restrictions que les autres modes sandbox.
est plus rapide, mais ne fonctionne pas du tout dans certains navigateurs plus anciens, y compris Internet Explorer
9. Le mode bac à sable peut être lu dans un script côté client en inspectant google.script.sandbox.mode
. Notez que cette propriété renvoie le mode réel sur le client,
qui peut différer du mode demandé sur le serveur si le mode demandé n'est pas pris en charge
dans le navigateur de l'utilisateur.
<!-- Read the sandbox mode (in a client-side script). --> <script> alert(google.script.sandbox.mode); </script>
Paramètres
Nom | Type | Description |
---|---|---|
mode | SandboxMode | Mode bac à sable à utiliser. |
Renvois
HtmlOutput
: sortie pour le chaînage.
setTitle(title)
Définit le titre de la page de sortie. Pour les applications Web, il s'agit du titre de la page entière.
pour HtmlOutput
affiché dans Google Sheets, il s'agit du titre de la boîte de dialogue.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setTitle('My First Page');
Paramètres
Nom | Type | Description |
---|---|---|
title | String | Nouveau titre. |
Renvois
HtmlOutput
: sortie pour le chaînage.
setWidth(width)
Définit la largeur initiale d'une boîte de dialogue personnalisée dans Google.
Docs, Sheets ou Forms. Si HtmlOutput
est publié en tant qu'application Web à la place, cette
n'a aucun effet. Pour redimensionner une boîte de dialogue déjà ouverte, appelez
google.script.host.setWidth(width)
dans le code côté client.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setWidth(200);
Paramètres
Nom | Type | Description |
---|---|---|
width | Integer | Nouvelle largeur en pixels null génère une valeur par défaut. |
Renvois
HtmlOutput
: sortie pour le chaînage.
setXFrameOptionsMode(mode)
Définit l'état de l'en-tête X-Frame-Options
de la page, qui contrôle le détournement de clic.
la prévention.
Si vous définissez XFrameOptionsMode.ALLOWALL
, n'importe quel site peut intégrer la page dans un cadre iFrame.
le développeur doit implémenter sa propre protection contre le détournement de clic.
Si un script ne définit pas de mode X-Frame-Options
, Apps Script utilise le mode XFrameOptionsMode.DEFAULT
par défaut.
// Serve HTML with no X-Frame-Options header (in Apps Script server-side code). var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL);
Paramètres
Nom | Type | Description |
---|---|---|
mode | XFrameOptionsMode | Mode d'options XFrame à définir. |
Renvois
HtmlOutput
: sortie pour le chaînage.