Class HtmlOutput

HtmlOutput

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 nella classe 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

MetodoTipo restituitoBreve descrizione
addMetaTag(name, content)HtmlOutputAggiunge un meta tag alla pagina.
append(addedContent)HtmlOutputAggiunge nuovi contenuti ai contenuti di questo HtmlOutput.
appendUntrusted(addedContent)HtmlOutputAggiunge nuovi contenuti ai contenuti di questo HtmlOutput utilizzando l'interpretazione letterale contestuale.
asTemplate()HtmlTemplateRestituisce un valore HtmlTemplate supportato da HtmlOutput.
clear()HtmlOutputCancella i contenuti correnti.
getAs(contentType)BlobRestituisce i dati all'interno di questo oggetto come blob convertito nel tipo di contenuto specificato.
getBlob()BlobRestituisce i dati all'interno dell'oggetto sotto forma di blob.
getContent()StringRecupera i contenuti di HtmlOutput.
getFaviconUrl()StringRecupera l'URL per un tag link della favicon aggiunto alla pagina chiamando setFaviconUrl(iconUrl).
getHeight()IntegerConsente 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()StringRestituisce il titolo della pagina di output.
getWidth()IntegerOttiene la larghezza iniziale della finestra di dialogo personalizzata in Google Documenti, Fogli o Moduli.
setContent(content)HtmlOutputImposta i contenuti di questo campo HtmlOutput.
setFaviconUrl(iconUrl)HtmlOutputAggiunge un tag link per una favicon alla pagina.
setHeight(height)HtmlOutputImposta l'altezza iniziale della finestra di dialogo personalizzata in Google Documenti, Fogli o Moduli.
setSandboxMode(mode)HtmlOutputQuesto metodo ora non ha alcun effetto: in precedenza impostava il sandbox mode utilizzato per gli script lato client.
setTitle(title)HtmlOutputImposta il titolo della pagina di output.
setWidth(width)HtmlOutputImposta la larghezza iniziale di una finestra di dialogo personalizzata in Google Documenti, Fogli o Moduli.
setXFrameOptionsMode(mode)HtmlOutputImposta 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

NomeTipoDescrizione
nameStringIl valore dell'attributo nome del meta tag.
contentStringIl 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

NomeTipoDescrizione
addedContentStringI 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>&lt;p&gt;Hello again, world.&lt;/p&gt;"
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
output.appendUntrusted('<p>Hello again, world.</p>');
Logger.log(output.getContent());

Parametri

NomeTipoDescrizione
addedContentStringI 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

NomeTipoDescrizione
contentTypeStringIl 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()

Restituisce i dati all'interno dell'oggetto sotto forma di blob.

Invio

Blob: i dati come blob.


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

NomeTipoDescrizione
contentStringI 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

NomeTipoDescrizione
iconUrlStringL'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

NomeTipoDescrizione
heightIntegerLa 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

NomeTipoDescrizione
modeSandboxModeModalità 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

NomeTipoDescrizione
titleStringIl 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

NomeTipoDescrizione
widthIntegerLa 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

NomeTipoDescrizione
modeXFrameOptionsModeLa modalità opzioni XFrame da impostare.

Invio

HtmlOutput: output, per il concatenamento.