Un oggetto HtmlOutput
che può essere pubblicato da uno script. Per motivi di sicurezza,
non possono restituire direttamente l'HTML a un browser. Devono invece disinfettare
non possano eseguire azioni dannose. Puoi restituire un codice HTML convalidato in questo modo:
function doGet() { return HtmlService.createHtmlOutput('<b>Hello, world!</b>'); }Il codice in
HtmlOutput
può includere JavaScript e CSS incorporati. (Si tratta dello standard
JavaScript lato client che manipola il DOM, non Apps Script). Tutti questi contenuti sono
sandbox utilizzando iframe
la sandbox. Per ulteriori informazioni, consulta la guida alle limitazioni del servizio HTML.Metodi
Metodo | Tipo restituito | Breve descrizione |
---|---|---|
addMetaTag(name, content) | HtmlOutput | Aggiunge un meta tag alla pagina. |
append(addedContent) | HtmlOutput | Aggiunge nuovi contenuti ai contenuti di questo HtmlOutput . |
appendUntrusted(addedContent) | HtmlOutput | Aggiunge nuovi contenuti ai contenuti di questo HtmlOutput utilizzando l'interpretazione letterale contestuale. |
asTemplate() | HtmlTemplate | Restituisce un valore HtmlTemplate supportato da HtmlOutput . |
clear() | HtmlOutput | Cancella i contenuti correnti. |
getAs(contentType) | Blob | Restituisce i dati all'interno di questo oggetto come blob convertito nel tipo di contenuto specificato. |
getBlob() | Blob | Restituisce i dati all'interno dell'oggetto sotto forma di blob. |
getContent() | String | Recupera i contenuti di HtmlOutput . |
getFaviconUrl() | String | Recupera l'URL per un tag link della favicon aggiunto alla pagina chiamando setFaviconUrl(iconUrl) . |
getHeight() | Integer | Consente di ottenere l'altezza iniziale della finestra di dialogo personalizzata in Google Documenti, Fogli o Moduli. |
getMetaTags() | HtmlOutputMetaTag[] | Ottiene un array di oggetti che rappresentano i meta tag aggiunti alla pagina chiamando addMetaTag(name, content) . |
getTitle() | String | Restituisce il titolo della pagina di output. |
getWidth() | Integer | Ottiene la larghezza iniziale della finestra di dialogo personalizzata in Google Documenti, Fogli o Moduli. |
setContent(content) | HtmlOutput | Imposta i contenuti di questo campo HtmlOutput . |
setFaviconUrl(iconUrl) | HtmlOutput | Aggiunge un tag link per una favicon alla pagina. |
setHeight(height) | HtmlOutput | Imposta l'altezza iniziale della finestra di dialogo personalizzata in Google Documenti, Fogli o Moduli. |
setSandboxMode(mode) | HtmlOutput | Questo metodo ora non ha alcun effetto: in precedenza impostava il sandbox
mode utilizzato per gli script lato client. |
setTitle(title) | HtmlOutput | Imposta il titolo della pagina di output. |
setWidth(width) | HtmlOutput | Imposta la larghezza iniziale di una finestra di dialogo personalizzata in Google Documenti, Fogli o Moduli. |
setXFrameOptionsMode(mode) | HtmlOutput | Imposta lo stato dell'intestazione X-Frame-Options della pagina, che controlla il clickjacking
prevenzione. |
Documentazione dettagliata
addMetaTag(name, content)
Aggiunge un meta tag alla pagina. I meta tag inclusi direttamente in un file HTML Apps Script ignorato. Sono consentiti solo i seguenti meta tag:
<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');
Parametri
Nome | Tipo | Descrizione |
---|---|---|
name | String | Il valore dell'attributo nome del meta tag. |
content | String | Il valore dell'attributo content del meta tag. |
Invio
HtmlOutput
: output, per il concatenamento.
append(addedContent)
Aggiunge nuovi contenuti ai contenuti di questo HtmlOutput
. Utilizza questa opzione solo per i contenuti provenienti da una
fonte attendibile, perché non contiene caratteri di escape.
// 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());
Parametri
Nome | Tipo | Descrizione |
---|---|---|
addedContent | String | I contenuti da aggiungere. |
Invio
HtmlOutput
: output, per il concatenamento.
Lanci
Error
: se il formato HTML non è valido
Vedi anche
appendUntrusted(addedContent)
Aggiunge nuovi contenuti ai contenuti di questo HtmlOutput
utilizzando l'interpretazione letterale contestuale.
Questo metodo esegue correttamente l'interpretazione letterale dei contenuti in base allo stato attuale dell'elemento HtmlOutput
,
in modo che il risultato sia una stringa sicura senza markup o effetto collaterale. Usa questo invece di usare
aggiungi ogni volta che aggiungi contenuti da una fonte non attendibile, ad esempio da un utente, per evitare
consentendo accidentalmente un bug cross-site scripting (XSS) in cui i contenuti o il markup che aggiungi
causa un'esecuzione imprevista del codice.
// 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());
Parametri
Nome | Tipo | Descrizione |
---|---|---|
addedContent | String | I contenuti da aggiungere. |
Invio
HtmlOutput
: output, per il concatenamento.
Lanci
Error
: se il formato HTML non è valido
Vedi anche
asTemplate()
Restituisce un valore HtmlTemplate
supportato da HtmlOutput
. Questo metodo può essere utilizzato
creare un modello in modo incrementale. Le modifiche future a HtmlOutput
influiranno sui contenuti di
HtmlTemplate
.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); var template = output.asTemplate();
Invio
HtmlTemplate
: il nuovo HtmlTemplate
.
clear()
Cancella i contenuti correnti.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.clear();
Invio
HtmlOutput
: output, per il concatenamento.
getAs(contentType)
Restituisce i dati all'interno di questo oggetto come blob convertito nel tipo di contenuto specificato. Questo aggiunge l'estensione appropriata al nome del file, ad esempio "miofile.pdf". Tuttavia, presuppone che la parte del nome file che segue l'ultimo punto (se presente) sia una un'estensione che deve essere sostituita. Di conseguenza, "ShoppingList.25.12.2014" diventa "ShoppingList.12.25.pdf".
Per visualizzare le quote giornaliere per le conversioni, consulta Quote per Google Servizi. I domini Google Workspace appena creati potrebbero essere temporaneamente soggetti a restrizioni quote.
Parametri
Nome | Tipo | Descrizione |
---|---|---|
contentType | String | Il tipo MIME in cui eseguire la conversione. Per la maggior parte dei blob, 'application/pdf' è
è l'unica opzione valida. Per le immagini in formato BMP, GIF, JPEG o PNG, vengono visualizzati anche i valori 'image/bmp' , 'image/gif' , 'image/jpeg' o 'image/png'
valida. Per un documento di Documenti Google è valido anche 'text/markdown' . |
Invio
Blob
: i dati come blob.
getBlob()
getContent()
Recupera i contenuti di HtmlOutput
.
// Log "<b>Hello, world!</b>" var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); Logger.log(output.getContent());
Invio
String
: i contenuti pubblicati.
getFaviconUrl()
Recupera l'URL per un tag link della favicon aggiunto alla pagina chiamando setFaviconUrl(iconUrl)
. I tag link favicon inclusi direttamente in un file HTML Apps Script
ignorato.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setFaviconUrl('http://www.example.com/image.png'); Logger.log(output.getFaviconUrl());
Invio
String
: l'URL dell'immagine della favicon.
getHeight()
Consente di ottenere l'altezza iniziale della finestra di dialogo personalizzata in Google
Documenti, Fogli o Moduli. Se invece HtmlOutput
viene pubblicata come app web,
restituisce null
. Per ridimensionare una finestra di dialogo già aperta, chiama
google.script.host.setHeight(height)
nel codice lato client.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setHeight(200); Logger.log(output.getHeight());
Invio
Integer
: l'altezza in pixel.
getMetaTags()
Ottiene un array di oggetti che rappresentano i meta tag aggiunti alla pagina chiamando addMetaTag(name, content)
. I meta tag inclusi direttamente in un file HTML Apps Script
ignorato.
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());
Invio
HtmlOutputMetaTag[]
: un array di oggetti che rappresentano i meta tag aggiunti alla pagina richiamando addMetaTag(name, content)
.
getTitle()
Restituisce il titolo della pagina di output. Nota che l'elemento <title> L'elemento HTML viene ignorato.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); Logger.log(output.getTitle());
Invio
String
: il titolo della pagina.
getWidth()
Ottiene la larghezza iniziale della finestra di dialogo personalizzata in Google
Documenti, Fogli o Moduli. Se invece HtmlOutput
viene pubblicata come app web,
restituisce null
. Per ridimensionare una finestra di dialogo già aperta, chiama
google.script.host.setWidth(width)
nel codice lato client.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setWidth(200); Logger.log(output.getWidth());
Invio
Integer
: la larghezza in pixel.
setContent(content)
Imposta i contenuti di questo campo HtmlOutput
.
var output = HtmlService.createHtmlOutput(); output.setContent('<b>Hello, world!</b>');
Parametri
Nome | Tipo | Descrizione |
---|---|---|
content | String | I contenuti da pubblicare. |
Invio
HtmlOutput
: output, per il concatenamento.
Lanci
Error
: se il formato HTML non è valido
setFaviconUrl(iconUrl)
Aggiunge un tag link per una favicon alla pagina. Tag link favicon inclusi direttamente in un'app I file HTML dello script vengono ignorati.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setFaviconUrl('http://www.example.com/image.png');
Parametri
Nome | Tipo | Descrizione |
---|---|---|
iconUrl | String | L'URL dell'immagine della favicon, con l'estensione immagine che indica l'immagine di testo. |
Invio
HtmlOutput
: output, per il concatenamento.
setHeight(height)
Imposta l'altezza iniziale della finestra di dialogo personalizzata in Google
Documenti, Fogli o Moduli. Se invece HtmlOutput
viene pubblicata come app web,
non ha alcun effetto. Per ridimensionare una finestra di dialogo già aperta, chiama
google.script.host.setHeight(height)
nel codice lato client.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setHeight(200);
Parametri
Nome | Tipo | Descrizione |
---|---|---|
height | Integer | La nuova altezza in pixel; null restituisce un valore predefinito. |
Invio
HtmlOutput
: output, per il concatenamento.
setSandboxMode(mode)
Questo metodo ora non ha alcun effetto: in precedenza impostava il sandbox
mode
utilizzato per gli script lato client. Per proteggere gli utenti da contenuti HTML dannosi o
Il codice JavaScript, lato client fornito da un servizio HTML, viene eseguito in una sandbox per la sicurezza che
impone restrizioni sul codice. In origine, questo metodo consentiva agli autori di script di scegliere
tra diverse versioni della sandbox, ma ora tutti gli script utilizzano la modalità IFRAME
a prescindere dalla modalità sandbox impostata. Per ulteriori informazioni, consulta la guida alle limitazioni del servizio HTML.
La modalità IFRAME
impone molte meno limitazioni rispetto alle altre modalità sandbox e
funziona più velocemente, ma non funziona affatto con alcuni browser meno recenti, tra cui Internet Explorer
9, La modalità sandbox può essere letta in uno script lato client controllando google.script.sandbox.mode
. Tieni presente che questa proprietà restituisce la modalità effettiva sul client,
che può essere diversa da quella richiesta sul server se la modalità richiesta non è supportata
nel browser dell'utente.
<!-- Read the sandbox mode (in a client-side script). --> <script> alert(google.script.sandbox.mode); </script>
Parametri
Nome | Tipo | Descrizione |
---|---|---|
mode | SandboxMode | Modalità sandbox da utilizzare. |
Invio
HtmlOutput
: output, per il concatenamento.
setTitle(title)
Imposta il titolo della pagina di output. Per le app web, si tratta del titolo dell'intera pagina, mentre
per HtmlOutput
mostrato in Fogli Google, questo è il titolo della finestra di dialogo.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setTitle('My First Page');
Parametri
Nome | Tipo | Descrizione |
---|---|---|
title | String | Il nuovo titolo. |
Invio
HtmlOutput
: output, per il concatenamento.
setWidth(width)
Imposta la larghezza iniziale di una finestra di dialogo personalizzata in Google
Documenti, Fogli o Moduli. Se invece HtmlOutput
viene pubblicata come app web,
non ha alcun effetto. Per ridimensionare una finestra di dialogo già aperta, chiama
google.script.host.setWidth(width)
nel codice lato client.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setWidth(200);
Parametri
Nome | Tipo | Descrizione |
---|---|---|
width | Integer | La nuova larghezza in pixel; null restituisce un valore predefinito. |
Invio
HtmlOutput
: output, per il concatenamento.
setXFrameOptionsMode(mode)
Imposta lo stato dell'intestazione X-Frame-Options
della pagina, che controlla il clickjacking
prevenzione.
L'impostazione di XFrameOptionsMode.ALLOWALL
consente a qualsiasi sito di creare un iframe della pagina, in modo che il
gli sviluppatori devono implementare la propria protezione contro il clickjacking.
Se uno script non imposta una modalità X-Frame-Options
, Apps Script utilizza la modalità XFrameOptionsMode.DEFAULT
come predefinita.
// 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);
Parametri
Nome | Tipo | Descrizione |
---|---|---|
mode | XFrameOptionsMode | La modalità opzioni XFrame da impostare. |
Invio
HtmlOutput
: output, per il concatenamento.