Gelişmiş Google hizmetleri

Apps Komut Dosyası'ndaki gelişmiş hizmetler, deneyimli geliştiricilerin belirli herkese açık Google API'lerine HTTP arayüzlerini kullanmaktan daha az kurulumla bağlanmasına olanak tanır. Gelişmiş hizmetler, esasen bu Google API'leri için ince sarmalayıcılardır. Bu kitaplıklar, Apps Komut Dosyası'nın yerleşik hizmetlerine benzer şekilde çalışır. Örneğin, otomatik tamamlama özelliği sunar ve Apps Komut Dosyası, yetkilendirme akışını otomatik olarak yönetir. Ancak komut dosyasında kullanabilmek için gelişmiş bir hizmeti etkinleştirmeniz gerekir.

Gelişmiş hizmetler olarak hangi Google API'lerinin kullanılabildiğini görmek için Referans bölümündeki Gelişmiş Google Hizmetleri bölümüne bakın. Gelişmiş hizmet olarak sunulmayan bir Google API'si kullanmak istiyorsanız diğer harici API'ler gibi bağlanmanız yeterlidir.

Gelişmiş hizmetler mi yoksa HTTP mi?

Gelişmiş Google hizmetlerinin her biri herkese açık bir Google API'siyle ilişkilendirilir. Apps Komut Dosyası'nda bu API'lere gelişmiş hizmetler aracılığıyla veya UrlFetch kullanarak doğrudan API istekleri göndererek erişebilirsiniz.

Gelişmiş hizmet yöntemini kullanıyorsanız Apps Komut Dosyası, yetkilendirme akışını yönetir ve otomatik tamamlama desteği sunar. Ancak bu hizmeti kullanabilmek için gelişmiş hizmeti etkinleştirmeniz gerekir. Ayrıca, bazı gelişmiş hizmetler yalnızca API'de bulunan işlevlerin bir alt kümesini sağlar.

API'ye doğrudan erişmek için UrlFetch yöntemini kullanıyorsanız Google API'yi aslında bir harici API olarak ele alıyorsunuz. Bu yöntemle API'nin tüm yönleri kullanılabilir. Ancak API yetkilendirmesini kendiniz yapmanız gerekir. Ayrıca, gerekli başlıkları oluşturmanız ve API yanıtlarını ayrıştırmanız gerekir.

Genel olarak, mümkün olduğunda gelişmiş bir hizmet kullanmak en kolay yöntemdir. UrlFetch yöntemini yalnızca gelişmiş hizmetin ihtiyacınız olan işlevselliği sağlamadığı durumlarda kullanın.

Şartlar

Gelişmiş bir hizmeti kullanabilmek için aşağıdaki koşulları karşılamanız gerekir:

  1. Komut dosyası projenizde gelişmiş hizmeti etkinleştirmeniz gerekir.
  2. Gelişmiş hizmete karşılık gelen API'nin, komut dosyanızın kullandığı Cloud Platform (GCP) projesinde etkinleştirildiğinden emin olmanız gerekir.

    Komut dosyası projeniz 8 Nisan 2019'da veya sonrasında oluşturulan bir varsayılan GCP projesi kullanıyorsa gelişmiş hizmeti etkinleştirip komut dosyası projesini kaydettikten sonra API otomatik olarak etkinleştirilir. Henüz yapmadıysanız Google Cloud ve Google API'leri Hizmet Şartları'nı da kabul etmeniz istenebilir.

    Komut dosyası projeniz bir standart GCP projesi veya eski bir varsayılan GCP projesi kullanıyorsa GCP projesinde gelişmiş hizmetin ilgili API'sini manuel olarak etkinleştirmeniz gerekir. Bu değişikliği yapmak için GCP projesine düzenleme erişiminiz olması gerekir.

Daha fazla bilgi için Cloud Platform projeleri başlıklı makaleye bakın.

Gelişmiş hizmetleri etkinleştirme

Gelişmiş bir Google hizmetini kullanmak için aşağıdaki talimatları uygulayın:

  1. Apps Komut Dosyası projesini açın.
  2. Sol tarafta Düzenleyici'yi tıklayın.
  3. Sol tarafta, Hizmetler'in yanındaki Hizmet ekle'yi tıklayın.
  4. Gelişmiş bir Google hizmeti seçip Ekle'yi tıklayın.

Etkinleştirdiğiniz gelişmiş hizmetler, otomatik tamamlama özelliğinde kullanılabilir.

Yöntem imzaları nasıl belirlenir?

Gelişmiş hizmetler genellikle aynı nesneleri, yöntem adlarını ve parametreleri kullanır. Yöntem imzaları, Apps Komut Dosyası'nda kullanılmak üzere çevrilir. Komut dosyası düzenleyicinin otomatik tamamlama işlevi genellikle başlamak için yeterli bilgiyi sağlar ancak aşağıdaki kurallar, Apps Komut Dosyası'nın herkese açık bir Google API'sinden nasıl yöntem imzası oluşturduğunu açıklar.

Google API'lerine yapılan istekler; yol parametreleri, sorgu parametreleri, istek gövdesi ve/veya medya yükleme eki dahil olmak üzere çeşitli veri türlerini kabul edebilir. Bazı gelişmiş hizmetler, belirli HTTP isteği üstbilgilerini de kabul edebilir (örneğin, Takvim gelişmiş hizmeti).

Google Apps Komut Dosyası'ndaki ilgili yöntem imzası aşağıdaki bağımsız değişkenlere sahiptir:

  1. İstek metni (genellikle bir kaynak), JavaScript nesnesi olarak.
  2. Yol veya gerekli parametreler, ayrı ayrı bağımsız değişkenler olarak.
  3. Medya yükleme eki, Blob argümanı olarak.
  4. Parametre adlarını değerlerle eşleyen bir JavaScript nesnesi olarak isteğe bağlı parametreler.
  5. HTTP istek üstbilgileri, üstbilgi adlarını üstbilgi değerleriyle eşleyen bir JavaScript nesnesi olarak.

Yöntemde belirli bir kategoride öğe yoksa imzanın bu kısmı atlanır.

Bilmeniz gereken bazı özel istisnalar vardır:

  • Medya yüklemeyi kabul eden yöntemler için uploadType parametresi otomatik olarak ayarlanır.
  • Google API'sindeki delete adlı yöntemler, Apps Komut Dosyası'nda remove olarak adlandırılır. Bunun nedeni, delete'nın JavaScript'te ayrılmış bir kelime olmasıdır.
  • Gelişmiş bir hizmet HTTP istek başlıklarını kabul edecek şekilde yapılandırılmışsa ve bir istek başlıkları JavaScript nesnesi ayarlarsanız isteğe bağlı parametreler JavaScript nesnesini de ayarlamanız gerekir (isteğe bağlı parametreleri kullanmıyorsanız boş bir nesneye ayarlayın).

Gelişmiş hizmetler için destek

Gelişmiş hizmetler, Apps Komut Dosyası'nda Google API'lerinin kullanılmasını sağlayan ince sarmalayıcılardır. Bu nedenle, bu API'ler kullanılırken karşılaşılan sorunlar genellikle Apps Komut Dosyası'nın kendisiyle değil, temel alınan API ile ilgili sorunlardır.

Gelişmiş bir hizmeti kullanırken sorunla karşılaşırsanız temel API'nin destek talimatlarını kullanarak sorunu bildirin. Bu destek talimatlarının bağlantıları, Apps Komut Dosyası Referans bölümündeki her bir gelişmiş hizmet kılavuzunda verilmiştir.