Aplikasi Web

Jika Anda membuat antarmuka pengguna untuk skrip, Anda dapat memublikasikan skrip tersebut sebagai aplikasi web. Misalnya, skrip yang memungkinkan pengguna menjadwalkan janji temu dengan anggota tim dukungan akan paling baik ditampilkan sebagai aplikasi web sehingga pengguna dapat mengaksesnya langsung dari browser mereka.

Skrip mandiri dan skrip yang terikat ke Google Workspace aplikasi dapat diubah menjadi aplikasi web, selama memenuhi persyaratan di bawah ini.

Persyaratan untuk aplikasi web

Skrip dapat dipublikasikan sebagai aplikasi web jika memenuhi persyaratan berikut:

Parameter permintaan

Saat pengguna mengunjungi aplikasi atau program mengirimkan permintaan GET HTTP ke aplikasi, Apps Script menjalankan fungsi doGet(e). Saat program mengirim permintaan POST HTTP aplikasi, Apps Script akan menjalankan doPost(e). Dalam kedua kasus tersebut, argumen e mewakili parameter peristiwa yang dapat berisi informasi tentang parameter permintaan apa pun. Struktur objek peristiwa ditampilkan dalam tabel di bawah:

Kolom
e.queryString

Nilai bagian string kueri URL, atau null jika string kueri tidak ditentukan

name=alice&n=1&n=2
e.parameter

Objek key-value pair yang sesuai dengan parameter permintaan. Hanya nilai pertama yang ditampilkan untuk parameter yang memiliki beberapa nilai.

{"name": "alice", "n": "1"}
e.parameters

Objek yang mirip dengan e.parameter, tetapi dengan array nilai untuk setiap kunci

{"name": ["alice"], "n": ["1", "2"]}
e.pathInfo

Jalur URL setelah /exec atau /dev. Misalnya, jika jalur URL berakhiran /exec/hello, info jalurnya adalah hello.

e.contextPath Tidak digunakan, selalu string kosong.
e.contentLength

Panjang isi permintaan untuk permintaan POST, atau -1 untuk permintaan GET

332
e.postData.length

Sama dengan e.contentLength

332
e.postData.type

Jenis MIME dari isi POST

text/csv
e.postData.contents

Teks konten dari isi POST

Alice,21
e.postData.name

Selalu nilai "postData"

postData

Misalnya, Anda dapat meneruskan parameter seperti username dan age ke URL seperti yang ditunjukkan di bawah:

https://script.google.com/.../exec?username=jsmith&age=21

Kemudian, Anda dapat menampilkan parameter seperti berikut:

function doGet(e) {
  var params = JSON.stringify(e);
  return HtmlService.createHtmlOutput(params);
}

Pada contoh di atas, doGet(e) menampilkan output berikut:

{
  "queryString": "username=jsmith&age=21",
  "parameter": {
    "username": "jsmith",
    "age": "21"
  },
  "contextPath": "",
  "parameters": {
    "username": [
      "jsmith"
    ],
    "age": [
      "21"
    ]
  },
  "contentLength": -1
}

Men-deploy skrip sebagai aplikasi web

Untuk menerapkan skrip sebagai aplikasi web, ikuti langkah berikut:

  1. Di kanan atas project skrip, klik Deploy > New deployment.
  2. Di samping "Pilih jenis", klik Aktifkan jenis deployment > Aplikasi web.
  3. Masukkan informasi tentang aplikasi web Anda di kolom pada "Konfigurasi deployment".
  4. Klik Deploy.

Anda dapat membagikan URL aplikasi web kepada siapa saja yang ingin menggunakan aplikasi Anda, asalkan Anda telah memberi mereka akses.

Menguji deployment aplikasi web

Untuk menguji skrip Anda sebagai aplikasi web, ikuti langkah-langkah di bawah:

  1. Di kanan atas project skrip, klik Deploy > Test deployment.
  2. Di samping "Pilih jenis", klik Aktifkan jenis deployment > Aplikasi web.
  3. Di bagian URL aplikasi web, klik Salin.
  4. Tempelkan URL di browser dan uji aplikasi web Anda.

    URL ini berakhir di /dev dan hanya dapat diakses oleh pengguna yang memiliki akses edit ke skrip. Instance aplikasi ini selalu menjalankan kode yang terakhir disimpan dan hanya ditujukan untuk pengujian selama pengembangan.

Izin

Izin untuk aplikasi web berbeda-beda tergantung cara Anda memilih untuk menjalankan aplikasi:

  • Jalankan aplikasi sebagai saya—Dalam hal ini, skrip selalu dijalankan sebagai Anda, pemilik skrip, terlepas dari siapa pun yang mengakses aplikasi web.
  • Jalankan aplikasi sebagai pengguna yang mengakses aplikasi web—Dalam hal ini, skrip akan berjalan di bawah identitas pengguna aktif menggunakan aplikasi web. Pendekatan izin ini menyebabkan aplikasi web menampilkan email pemilik skrip saat pengguna memberi otorisasi akses.

Menyematkan aplikasi web Anda di Google Sites

Anda juga dapat menyematkan aplikasi web di Google Sites versi klasik dan versi baru.

Menyematkan aplikasi web di Sites baru

Untuk menyematkan aplikasi web, aplikasi harus di-deploy terlebih dahulu. Anda juga memerlukan URL yang Di-deploy dari dialog Deploy.

Untuk menyematkan aplikasi web ke halaman Sites baru, ikuti langkah-langkah berikut:

  1. Buka halaman Sites tempat Anda ingin menambahkan aplikasi web.
  2. Pilih Sisipkan > URL Tersemat.
  3. Tempelkan URL aplikasi web, lalu klik ADD.

Aplikasi web muncul dalam bingkai di pratinjau halaman. Saat Anda memublikasikan halaman, audiens situs mungkin perlu mengizinkan aplikasi web sebelum berjalan seperti biasa. Aplikasi web yang tidak diizinkan menyajikan permintaan otorisasi kepada pengguna.

Menyematkan aplikasi web di Sites klasik

Anda dapat mengikat skrip ke Situs Google klasik dengan cara yang sama seperti Anda dapat mengikat skrip ke Google Dokumen atau Spreadsheet. Untuk membuat skrip terikat, kunjungi situs Anda, klik ikon roda gigi Setelan, lalu pilih Kelola situs. Di halaman Manage Site, klik Apps Script di navigasi sebelah kiri, lalu klik tombol Add new script. Tindakan ini akan membuka skrip baru di editor Apps Script, tempat Anda dapat membuat kode dan men-deploy aplikasi web.

Anda juga dapat menyematkan aplikasi web di halaman. Anda dapat mengikat aplikasi web ke situs atau menggunakan aplikasi web apa pun yang URL-nya Anda miliki. Untuk menyematkan aplikasi web ke halaman Google Sites, ikuti langkah-langkah di bawah ini:

  1. Buka Situs tempat Anda memiliki akses edit atau membuat Situs baru.
  2. Buka halaman di Situs Anda tempat Anda ingin menyematkan aplikasi web.
  3. Klik ikon edit, lalu Sisipkan > Skrip Google Apps.
  4. Pilih skrip dari daftar yang mewakili aplikasi web Anda. Jika aplikasi web Anda tidak terikat dengan Situs ini, Anda dapat menempelkan di URL aplikasi web.
  5. Klik tombol Select, pilih opsi yang diinginkan dari dialog berikutnya, dan klik Save.
  6. Simpan perubahan pada halaman, lalu Anda akan melihat aplikasi web disematkan di halaman Sites.

Aplikasi Web dan Histori Browser

Sangat disarankan untuk memiliki aplikasi web Apps Script yang menyimulasikan aplikasi multihalaman, atau aplikasi dengan UI dinamis yang dikontrol melalui parameter URL. Untuk melakukannya dengan baik, Anda dapat menentukan objek status untuk mewakili UI atau halaman aplikasi, dan mengirim status ke dalam histori browser saat pengguna menavigasi aplikasi. Anda juga dapat memproses peristiwa histori sehingga aplikasi web menampilkan UI yang benar saat pengguna berpindah-pindah dengan tombol browser. Dengan membuat kueri parameter URL saat pemuatan, Anda dapat membuat aplikasi membuat UI-nya secara dinamis berdasarkan parameter tersebut, sehingga pengguna dapat memulai aplikasi dalam status tertentu.

Apps Script menyediakan dua API JavaScript sisi klien asinkron untuk membantu membuat aplikasi web yang ditautkan ke histori browser:

  • google.script.history menyediakan metode untuk mengizinkan respons dinamis terhadap perubahan histori browser. Hal ini mencakup: status push (Objek sederhana yang dapat Anda tentukan) ke histori browser, mengganti status teratas di stack histori, dan menyetel fungsi callback pemroses untuk merespons perubahan histori.

  • google.script.url menyediakan cara untuk mengambil parameter URL halaman dan fragmen URL saat ini, jika ada.

API histori ini hanya tersedia untuk aplikasi web. Alat ini tidak didukung untuk sidebar, dialog, atau add-on. Fungsi ini juga tidak direkomendasikan untuk digunakan di aplikasi web yang disematkan di Google Sites.