Web Uygulamaları

Bir komut dosyası için kullanıcı arayüzü derlerseniz, komut dosyasını web uygulaması. Örneğin, kullanıcıların randevularını web uygulaması olarak sunulması önerilir. Böylece kullanıcılar buna doğrudan tarayıcılarından erişebilir.

Hem bağımsız komut dosyaları hem de uygulamalara Google Workspace bağlı komut dosyaları dönüştürülebilir web uygulamaları (aşağıdaki şartları karşıladığı sürece)

Web uygulamaları için şartlar

Komut dosyası, aşağıdaki şartları karşılıyorsa web uygulaması olarak yayınlanabilir:

İstek parametreleri

Kullanıcı bir uygulamayı ziyaret ettiğinde veya program uygulamaya HTTP GET isteği gönderdiğinde, Apps Komut Dosyası, doGet(e) işlevini çalıştırır. Bir program, uygulamaya HTTP gönderdiğinde POST isteği, Apps Komut Dosyası bunun yerine doPost(e) sürümünü çalıştırır. Her iki durumda da e argüman, herhangi bir öğeyle ilgili bilgi içerebilen bir etkinlik parametresini istek parametreleridir. Etkinlik nesnesinin yapısı tabloda gösterilir aşağıda bulabilirsiniz:

Alanlar
e.queryString

URL'nin sorgu dizesi bölümünün değeri veya sorgu dizesi belirtilmediyse null

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

İstek parametrelerine karşılık gelen anahtar/değer çiftleri nesnesi. Birden çok değeri olan parametreler için yalnızca ilk değer döndürülür.

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

e.parameter benzeri ancak her anahtar için bir değer dizisi olan nesne

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

/exec veya /dev ifadesinden sonraki URL yolu. Örneğin, URL yolu /exec/hello ile bitiyorsa yol bilgisi: hello.

e.contextPath Kullanılmaz, her zaman boş dizedir.
e.contentLength

POST istekleri için istek gövdesinin uzunluğu veya GET istekleri için -1

332
e.postData.length

e.contentLength ile aynı

332
e.postData.type

POST gövdesinin MIME türü

text/csv
e.postData.contents

POST gövdesinin içerik metni

Alice,21
e.postData.name

Her zaman "postData" değeri kullanılır

postData

Örneğin, username ve age gibi parametreleri aktarabilirsiniz aşağıdaki gibi bir URL'ye ekleyin:

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

Ardından, parametreleri aşağıdaki gibi görüntüleyebilirsiniz:

function doGet(e) {
  var params = JSON.stringify(e);
  return ContentService.createTextOutput(params).setMimeType(ContentService.MimeType.JSON);
}

Yukarıdaki örnekte, doGet(e) aşağıdaki çıkışı döndürür:

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

Komut dosyasını web uygulaması olarak dağıtma

Bir komut dosyasını web uygulaması olarak dağıtmak için şu adımları izleyin:

  1. Komut dosyası projesinin sağ üst tarafındaki Dağıt'ı tıklayın > Yeni dağıtım.
  2. "Tür seçin"in yanında "Dağıtım türlerini etkinleştir"i tıklayın. Web uygulaması.
  3. "Dağıtım" altındaki alanlara web uygulamanızla ilgili bilgileri girin. yapılandır."
  4. Dağıt'ı tıklayın.

Web uygulaması URL'sini, uygulamanızı kullanmak istediğiniz kişilerle paylaşabilirsiniz. bu verilere erişim izni vermiş olmanız gerekir.

Web uygulaması dağıtımını test etme

Komut dosyanızı bir web uygulaması olarak test etmek için aşağıdaki adımları uygulayın:

  1. Komut dosyası projesinin sağ üst tarafındaki Dağıt > Test et dağıtımları başlıklı makaleyi inceleyin.
  2. "Tür seçin"in yanında "Dağıtım türlerini etkinleştir"i tıklayın. > Web uygulaması.
  3. Web uygulaması URL'sinin altında Kopyala'yı tıklayın.
  4. URL'yi tarayıcınıza yapıştırın ve web uygulamanızı test edin.

    Bu URL /dev ile bitiyor ve yalnızca düzenleme erişimi olan kullanıcılar tarafından erişilebilir komut dosyasına aktaracağım. Uygulamanın bu örneği her zaman en son kaydedileni çalıştırır ve yalnızca geliştirme sırasında test etmek için tasarlanmıştır.

İzinler

Web uygulamasının izinleri, yürütme yöntemini nasıl seçtiğinize bağlı olarak farklılık gösterir uygulama:

  • Uygulamayı benim olarak çalıştır: Bu durumda komut dosyası her zaman yürütülür siz olarak, web uygulamasına kimin eriştiğine bakılmaksızın komut dosyasının sahibi olarak.
  • Uygulamayı, web uygulamasına erişen kullanıcı olarak yürütme: Bu durumda komut dosyası, Web uygulamasını kullanan etkin kullanıcının kimliği altında çalışır. Bu izin yaklaşımı, kullanıcı bir sonraki işlemi gerçekleştirdiğinde web uygulamasının komut dosyası sahibinin e-postasını göstermesine neden olur. erişim izni verir.

Web uygulamanızı Google Sites'a yerleştirme

Bir web uygulamasını Google Sites'a yerleştirmek için öncelikle dağıtıldı. Ayrıca Deploy iletişim kutusunda Dağıtılan URL'yi seçmeniz gerekir.

Bir Sites'a web uygulaması yerleştirmek için şu adımları uygulayın:

  1. Web uygulamasını eklemek istediğiniz Google Sites sayfasını açın.
  2. Ekle > Yerleştirme URL'si.
  3. Web uygulaması URL'sini yapıştırın, ardından EKLE'yi tıklayın.

Web uygulaması, sayfa önizlemesinde bir çerçeve içinde görünür. Yayınladığınızda önce web uygulamasını yetkilendirmeniz gerekebilir. normal bir şekilde çalışır. Yetkisiz web uygulamaları, şu kullanıcılara yetkilendirme istemleri sunar: gösterir.

Web Uygulamaları ve Tarayıcı Geçmişi

Apps Komut Dosyası web uygulamasının birden fazla sayfayı simüle etmesi tercih edilebilir. veya URL parametreleri aracılığıyla kontrol edilen dinamik kullanıcı arayüzüne sahip bir web uygulamasıdır. Bunu iyi bir şekilde yapmak için uygulamanın durumunu temsil eden bir durum nesnesi açın ve durumu tarayıcı geçmişine uygulamanızda gezinen kullanıcıdır. Ayrıca geçmişteki etkinlikleri dinleyebilirsiniz. Böylece web kullanıcı önceki ekran görüntüsünde ileri ve geri gittiğinde, uygulamanın doğru tarayıcı düğmeleri. Yükleme zamanında URL parametrelerini sorgulayarak, URL parametrelerini Kullanıcı arayüzünü bu parametrelere göre dinamik bir şekilde derler. Böylece, uygulamanın belirli bir durumda başlatılmasını sağlar.

Apps Komut Dosyası, yardımcı olmak için iki eşzamansız istemci tarafı JavaScript API'si sağlar tarayıcı geçmişine bağlı web uygulamaları oluşturmada:

  • google.script.history tarayıcı geçmişi değişikliklerine dinamik yanıt vermeye olanak tanıyan yöntemler sunar. Bu içerir: tarayıcıya durum aktarma (tanımlayabileceğiniz basit nesneler) geçmiş, geçmiş yığınındaki en üst durumu değiştirme ve bir işleyici ayarlama geri çağırma işlevini kullanabilir.

  • google.script.url, geçerli sayfanın URL parametrelerini ve URL parçasını alma anlamına gelir. daha iyi olur.

Bu geçmiş API'leri yalnızca web uygulamaları tarafından kullanılabilir. Bunlar: Kenar çubukları, iletişim kutuları veya eklentiler için desteklenir. Bu işlev aynı zamanda şurada kullanılması önerilmez: Google Sites sitelerine yerleştirilmiş web uygulamaları.