Objek HtmlOutput
yang dapat ditayangkan dari skrip. Karena pertimbangan keamanan,
skrip tidak dapat langsung mengembalikan HTML ke browser. Sebagai gantinya, mereka harus
mencucinya sehingga
tidak dapat melakukan tindakan jahat. Anda dapat menampilkan HTML yang bersih seperti ini:
function doGet() { return HtmlService.createHtmlOutput('<b>Hello, world!</b>'); }
HtmlOutput
dapat menyertakan JavaScript dan CSS yang disematkan. (Ini adalah standar
JavaScript sisi klien yang memanipulasi DOM, bukan Apps Script). Semua konten ini
di-sandbox menggunakan iframe
menggunakan sandbox. Untuk informasi lebih lanjut, lihat panduan untuk batasan dalam layanan HTML.Metode
Metode | Jenis hasil yang ditampilkan | Deskripsi singkat |
---|---|---|
addMetaTag(name, content) | HtmlOutput | Menambahkan tag meta ke halaman. |
append(addedContent) | HtmlOutput | Menambahkan konten baru ke konten HtmlOutput ini. |
appendUntrusted(addedContent) | HtmlOutput | Menambahkan konten baru ke konten HtmlOutput ini menggunakan escaping kontekstual. |
asTemplate() | HtmlTemplate | Menampilkan HtmlTemplate yang didukung oleh HtmlOutput ini. |
clear() | HtmlOutput | Menghapus konten saat ini. |
getAs(contentType) | Blob | Menampilkan data di dalam objek ini sebagai blob yang dikonversi ke jenis konten yang ditentukan. |
getBlob() | Blob | Menampilkan data di dalam objek ini sebagai blob. |
getContent() | String | Mendapatkan konten HtmlOutput ini. |
getFaviconUrl() | String | Mendapatkan URL untuk tag link favicon yang ditambahkan ke halaman dengan memanggil setFaviconUrl(iconUrl) . |
getHeight() | Integer | Mendapatkan tinggi awal dialog kustom di Google Dokumen, Spreadsheet, atau Formulir. |
getMetaTags() | HtmlOutputMetaTag[] | Mendapatkan array objek yang mewakili tag meta yang ditambahkan ke halaman dengan memanggil addMetaTag(name, content) . |
getTitle() | String | Mendapatkan judul halaman output. |
getWidth() | Integer | Mendapatkan lebar awal dialog kustom di Google Dokumen, Spreadsheet, atau Formulir. |
setContent(content) | HtmlOutput | Menetapkan konten HtmlOutput ini. |
setFaviconUrl(iconUrl) | HtmlOutput | Menambahkan tag link untuk favicon ke halaman. |
setHeight(height) | HtmlOutput | Menetapkan tinggi awal dialog kustom di Google Dokumen, Spreadsheet, atau Formulir. |
setSandboxMode(mode) | HtmlOutput | Metode ini sekarang tidak berpengaruh — sebelumnya metode ini menetapkan sandbox
mode yang digunakan untuk skrip sisi klien. |
setTitle(title) | HtmlOutput | Menetapkan judul halaman output. |
setWidth(width) | HtmlOutput | Menetapkan lebar awal dialog kustom di Google Dokumen, Spreadsheet, atau Formulir. |
setXFrameOptionsMode(mode) | HtmlOutput | Menetapkan status header X-Frame-Options halaman, yang mengontrol clickjacking
pencegahan. |
Dokumentasi mendetail
addMetaTag(name, content)
Menambahkan tag meta ke halaman. Tag meta yang disertakan langsung dalam file HTML Apps Script diabaikan. Hanya tag meta berikut yang diperbolehkan:
<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');
Parameter
Nama | Jenis | Deskripsi |
---|---|---|
name | String | Nilai dari atribut nama tag meta. |
content | String | Nilai atribut konten tag meta. |
Pulang pergi
HtmlOutput
— Output ini, untuk perantaian.
append(addedContent)
Menambahkan konten baru ke konten HtmlOutput
ini. Gunakan ini hanya untuk konten dari
sumber tepercaya, karena tidak 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());
Parameter
Nama | Jenis | Deskripsi |
---|---|---|
addedContent | String | Konten yang akan ditambahkan. |
Pulang pergi
HtmlOutput
— Output ini, untuk perantaian.
Menampilkan
Error
— jika format HTML salah
Lihat juga
appendUntrusted(addedContent)
Menambahkan konten baru ke konten HtmlOutput
ini menggunakan escaping kontekstual.
Metode ini meng-escape konten dengan benar berdasarkan status HtmlOutput
saat ini,
sehingga hasilnya adalah string yang aman
tanpa pengaruh markup atau samping. Gunakan ini daripada menggunakan
setiap kali Anda menambahkan konten dari sumber yang tidak tepercaya, seperti dari pengguna, untuk menghindari
secara tidak sengaja mengizinkan bug pembuatan skrip lintas situs (XSS) apabila konten atau markup yang Anda tambahkan
menyebabkan eksekusi kode yang tidak terduga.
// 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());
Parameter
Nama | Jenis | Deskripsi |
---|---|---|
addedContent | String | Konten yang akan ditambahkan. |
Pulang pergi
HtmlOutput
— Output ini, untuk perantaian.
Menampilkan
Error
— jika format HTML sangat salah
Lihat juga
asTemplate()
Menampilkan HtmlTemplate
yang didukung oleh HtmlOutput
ini. Metode ini dapat digunakan untuk
membangun {i>template<i} secara bertahap. Perubahan pada masa mendatang pada HtmlOutput
memengaruhi konten
HtmlTemplate
.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); var template = output.asTemplate();
Pulang pergi
HtmlTemplate
— HtmlTemplate
baru.
clear()
Menghapus konten saat ini.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.clear();
Pulang pergi
HtmlOutput
— Output ini, untuk perantaian.
getAs(contentType)
Menampilkan data di dalam objek ini sebagai blob yang dikonversi ke jenis konten yang ditentukan. Ini menambahkan ekstensi yang sesuai ke nama file—misalnya, "myfile.pdf". Namun, mengasumsikan bahwa bagian dari nama {i>file<i} yang mengikuti titik terakhir (jika ada) adalah bagian yang harus diganti. Akibatnya, "ShoppingList.12.25.2014" menjadi "ShoppingList.12.25.pdf".
Untuk melihat kuota harian untuk konversi, lihat Kuota untuk Google Layanan. Domain Google Workspace yang baru dibuat mungkin tunduk kepada aturan yang lebih ketat kuota tambahan.
Parameter
Nama | Jenis | Deskripsi |
---|---|---|
contentType | String | Jenis MIME yang menjadi tujuan konversi. Untuk sebagian besar blob, 'application/pdf' adalah
satu-satunya opsi yang valid. Untuk gambar dalam format BMP, GIF, JPEG, atau PNG, dari 'image/bmp' , 'image/gif' , 'image/jpeg' , atau 'image/png' juga
valid. Untuk dokumen Google Dokumen, 'text/markdown' juga valid. |
Pulang pergi
Blob
— Data sebagai blob.
getBlob()
getContent()
Mendapatkan konten HtmlOutput
ini.
// Log "<b>Hello, world!</b>" var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); Logger.log(output.getContent());
Pulang pergi
String
— Konten yang ditayangkan.
getFaviconUrl()
Mendapatkan URL untuk tag link favicon yang ditambahkan ke halaman dengan memanggil setFaviconUrl(iconUrl)
. Tag link favicon yang disertakan secara langsung dalam file HTML Apps Script adalah
diabaikan.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setFaviconUrl('http://www.example.com/image.png'); Logger.log(output.getFaviconUrl());
Pulang pergi
String
— URL gambar favicon.
getHeight()
Mendapatkan tinggi awal dialog kustom di Google
Dokumen, Spreadsheet, atau Formulir. Jika HtmlOutput
dipublikasikan sebagai aplikasi web, tindakan ini
akan menampilkan null
. Untuk mengubah ukuran dialog yang sudah terbuka, panggil
google.script.host.setHeight(height)
dalam kode sisi klien.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setHeight(200); Logger.log(output.getHeight());
Pulang pergi
Integer
— Tinggi, dalam piksel.
getMetaTags()
Mendapatkan array objek yang mewakili tag meta yang ditambahkan ke halaman dengan memanggil addMetaTag(name, content)
. Tag meta yang disertakan langsung dalam file HTML Apps Script
diabaikan.
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());
Pulang pergi
HtmlOutputMetaTag[]
— Array objek yang mewakili tag meta yang ditambahkan ke halaman dengan memanggil addMetaTag(name, content)
.
getTitle()
Mendapatkan judul halaman output. Perhatikan bahwa <title> Elemen HTML diabaikan.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); Logger.log(output.getTitle());
Pulang pergi
String
— Judul halaman.
getWidth()
Mendapatkan lebar awal dialog kustom di Google
Dokumen, Spreadsheet, atau Formulir. Jika HtmlOutput
dipublikasikan sebagai aplikasi web, tindakan ini
akan menampilkan null
. Untuk mengubah ukuran dialog yang sudah terbuka, panggil
google.script.host.setWidth(width)
dalam kode sisi klien.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setWidth(200); Logger.log(output.getWidth());
Pulang pergi
Integer
— Lebar dalam piksel.
setContent(content)
Menetapkan konten HtmlOutput
ini.
var output = HtmlService.createHtmlOutput(); output.setContent('<b>Hello, world!</b>');
Parameter
Nama | Jenis | Deskripsi |
---|---|---|
content | String | Konten yang akan ditayangkan. |
Pulang pergi
HtmlOutput
— Output ini, untuk perantaian.
Menampilkan
Error
— jika format HTML salah
setFaviconUrl(iconUrl)
Menambahkan tag link untuk favicon ke halaman. Tag link Favicon disertakan langsung dalam Aplikasi File HTML skrip diabaikan.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setFaviconUrl('http://www.example.com/image.png');
Parameter
Nama | Jenis | Deskripsi |
---|---|---|
iconUrl | String | URL gambar favicon, dengan ekstensi gambar yang menunjukkan gambar . |
Pulang pergi
HtmlOutput
— Output ini, untuk perantaian.
setHeight(height)
Menetapkan tinggi awal dialog kustom di Google
Dokumen, Spreadsheet, atau Formulir. Jika HtmlOutput
dipublikasikan sebagai aplikasi web, tindakan ini
tidak berpengaruh. Untuk mengubah ukuran dialog yang sudah terbuka, panggil
google.script.host.setHeight(height)
dalam kode sisi klien.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setHeight(200);
Parameter
Nama | Jenis | Deskripsi |
---|---|---|
height | Integer | Tinggi baru dalam piksel; null menghasilkan nilai default. |
Pulang pergi
HtmlOutput
— Output ini, untuk perantaian.
setSandboxMode(mode)
Metode ini sekarang tidak berpengaruh — sebelumnya metode ini menetapkan sandbox
mode
yang digunakan untuk skrip sisi klien. Untuk melindungi pengguna agar tidak melihat HTML berbahaya atau
JavaScript, kode sisi klien yang disajikan dari layanan HTML dijalankan dalam {i>sandbox<i} keamanan yang
memberlakukan pembatasan pada kode. Awalnya metode ini memungkinkan penulis skrip untuk memilih
di antara berbagai versi sandbox, tetapi sekarang semua skrip sekarang menggunakan mode IFRAME
terlepas dari mode sandbox yang ditetapkan. Untuk informasi lebih lanjut, lihat panduan untuk batasan dalam layanan HTML.
Mode IFRAME
menerapkan batasan yang jauh lebih sedikit dibandingkan mode sandbox lainnya dan
berjalan tercepat, tetapi tidak berfungsi sama sekali di browser lama tertentu, termasuk Internet Explorer
9. Mode sandbox dapat dibaca dalam skrip sisi klien dengan memeriksa google.script.sandbox.mode
. Perhatikan bahwa properti ini menampilkan mode aktual pada klien,
yang mungkin berbeda dari mode yang diminta pada server jika mode yang diminta tidak didukung
di browser pengguna.
<!-- Read the sandbox mode (in a client-side script). --> <script> alert(google.script.sandbox.mode); </script>
Parameter
Nama | Jenis | Deskripsi |
---|---|---|
mode | SandboxMode | Mode sandbox yang akan digunakan. |
Pulang pergi
HtmlOutput
— Output ini, untuk perantaian.
setTitle(title)
Menetapkan judul halaman output. Untuk aplikasi web, ini adalah judul seluruh halaman, sedangkan
untuk HtmlOutput
yang ditampilkan di Google Spreadsheet, ini adalah judul dialog.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setTitle('My First Page');
Parameter
Nama | Jenis | Deskripsi |
---|---|---|
title | String | Judul baru. |
Pulang pergi
HtmlOutput
— Output ini, untuk perantaian.
setWidth(width)
Menetapkan lebar awal dialog kustom di Google
Dokumen, Spreadsheet, atau Formulir. Jika HtmlOutput
dipublikasikan sebagai aplikasi web, tindakan ini
tidak berpengaruh. Untuk mengubah ukuran dialog yang sudah terbuka, panggil
google.script.host.setWidth(width)
dalam kode sisi klien.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setWidth(200);
Parameter
Nama | Jenis | Deskripsi |
---|---|---|
width | Integer | Lebar baru dalam {i>pixel<i}; null menghasilkan nilai default. |
Pulang pergi
HtmlOutput
— Output ini, untuk perantaian.
setXFrameOptionsMode(mode)
Menetapkan status header X-Frame-Options
halaman, yang mengontrol clickjacking
pencegahan.
Menyetel XFrameOptionsMode.ALLOWALL
memungkinkan situs apa pun melakukan iframe halaman, sehingga
developer harus menerapkan perlindungan mereka sendiri terhadap pembajakan.
Jika skrip tidak menetapkan mode X-Frame-Options
, Apps Script akan menggunakan mode XFrameOptionsMode.DEFAULT
sebagai default.
// 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);
Parameter
Nama | Jenis | Deskripsi |
---|---|---|
mode | XFrameOptionsMode | Mode opsi XFrame untuk disetel. |
Pulang pergi
HtmlOutput
— Output ini, untuk perantaian.