Toplu istekler

Bu belgede, daha fazla bilgi edindiniz. Toplu işlem, bir uygulamanın verimi artırır.

Genel Bakış

İstemcinizin yaptığı her bağlantı, belirli miktarda ek yüke neden olur. Google Docs API, istemcinizin birden fazla doküman yerleştirmesine olanak tanımak için toplu işlemeyi destekler. istek nesnelerinden her biri gerçekleştirilecek tek bir istek türünü belirtir. tek bir toplu istek haline getirilebilir. Toplu istek, birden fazla alt isteği sunucuya tek bir çağrıda birleştirip tek bir yanıt alarak performansı artırabilir.

Kullanıcıların, birden fazla isteği her zaman aynı grupta toplamasını öneririz. Aşağıda bazı örnekler verilmiştir: Toplu işlemeyi kullanabileceğiniz durumlara ilişkin örnekler:

  • API'yi kullanmaya yeni başladınız ve yüklemeniz gereken çok fazla veri var.
  • Meta veri veya biçimlendirme gibi özellikleri, birden fazla nesneler'i tıklayın.
  • Çok sayıda nesneyi silmeniz gerekir.

Sınırlar, yetkilendirme ve bağımlılıkla ilgili dikkat edilmesi gereken noktalar

Toplu güncellemeyi uygularken göz önünde bulundurulması gereken diğer öğelerin bir listesini aşağıda bulabilirsiniz:

  • Tüm alt istekler dahil olmak üzere her toplu istek, bir API olarak sayılır kullanım sınırınız için istekte bulunabilirsiniz.
  • Bir toplu isteğin kimliği bir kez doğrulanır. Bu tek kimlik doğrulama yöntemi tüm toplu güncelleme nesnelerini otomatik olarak değiştirir.
  • Sunucu, alt istekleri toplu istek. Sonraki alt istekler, önceki alt istekler sırasında yapılan işlemlere bağlı olabilir. Örneğin, aynı toplu istekte, kullanıcılar metin ekleyin ve stilini belirleyin.

Grup ayrıntıları

Toplu istek bir batchUpdate yöntem çağrısından oluşur ekleyebilirsiniz. Örneğin, bir doküman ekleyip biçimlendirebilirsiniz.

Her istek, uygulanmadan önce doğrulanır. Toplu güncellemedeki tüm alt istekler atomik olarak uygulanır. Yani herhangi bir istek geçerli değilse güncellemenin tamamı başarısız olur ve şunlardan hiçbiri (potansiyel olarak bağımlı değildir) emin olun.

Bazı taleplerde, geçerli taleplerle ilgili bilgiler içeren yanıtlar bulunur. Örneğin, nesne eklemeyle ilgili tüm toplu güncelleme istekleri, yeni eklenen nesnenin kimliği veya başlığı gibi meta verilerine erişebilmeniz için yanıt döndürür.

Bu yaklaşımla, tek bir API kullanarak tüm bir Google belgesini oluşturabilirsiniz birden fazla alt istek içeren toplu güncelleme isteği.

Toplu isteğin biçimi

İstek; birden fazla etiket içeren tek bir JSON isteğidir. bir zorunlu özelliğe sahip iç içe yerleştirilmiş alt istekler: requests. İlgili içeriği oluşturmak için kullanılan istekler bağımsız bir dizi istek halinde oluşturulur. Her istekte İstek nesnesini temsil edecek ve özelliklerini içerecek JSON.

Toplu yanıt biçimi

Bir toplu isteğin yanıt biçimi şuna benzerdir: istek biçimine dönüştürülecektir. Sunucunun yanıtı teklinin tam yanıtını içerir yanıt nesnesini tanımlayın.

Ana JSON nesnesinin özelliği replies olarak adlandırılır. Yanıtlar isteklerinden birine verilen her yanıt ile bir dizi içinde döndürülür. aynı dizin sıralamasına sahiptir. Bazı isteklerin yanıtı yoktur ve söz konusu dizi dizinindeki yanıt boştur.

Örnek

Aşağıdaki kod örneğinde, Docs API ile toplu hale getirme işlevi gösterilmektedir.

İstek

Bu örnek toplu istekte aşağıdakilerin nasıl yapılacağı gösterilmektedir:

  • "Hello World" ifadesini ekleyin mevcut bir dokümanın başına ekleyebilirsiniz. dizin location/1 InsertTextRequest.

  • "Merhaba" kelimesini güncelleyin her bir arama terimi için UpdateTextStyleRequest. startIndex ve endIndex, biçimlendirilmiş metnin range değerini tanımlar seçin.

  • textStyle kullanarak yalnızca yazı tipi stilini kalın, rengi mavi olarak ayarlayın. “Merhaba” kelimesi.

  • WriteControl'ı kullanma alanına göre, yazma isteklerinin nasıl yürütüleceğini kontrol edebilirsiniz. Daha fazla WriteControl.

{
   "requests":[
      {
         "insertText":{
            "location":{
               "index":1,
               "tabId":TAB_ID
            },
            "text":"Hello World"
         }
      },
      {
         "updateTextStyle":{
            "range":{
               "startIndex":1,
               "endIndex":6
            },
            "textStyle":{
               "bold":true,
               "foregroundColor":{
                  "color":{
                     "rgbColor":{
                        "blue":1
                     }
                  }
               }
            },
            "fields":"bold,foreground_color"
         }
      }
   ],
   "writeControl": {
      "requiredRevisionId": "REQUIRED_REVISION_ID"
  }
}

TAB_ID ve REQUIRED_REVISION_ID değerlerini şununla değiştirin: Yazma isteği belgesinin sırasıyla sekme kimliği ve düzeltme kimliği kararlaştırılır.

Yanıt

Bu örnek toplu yanıtta, toplu istekteki her alt isteğinin nasıl uygulandığıyla ilgili bilgiler gösterilmektedir. Ne InsertTextRequest veya UpdateTextStyleRequest bir yanıt içerdiğinden, [0] ve [1] noktalarındaki dizinin dizin değerleri; var. Toplu istek, WriteControl nesnesini görüntüler. Bu sayfa, isteklerin nasıl yürütüldüğünü gösterir.

{
   "replies":[
      {},
      {}
   ],
   "writeControl":{
      "requiredRevisionId":`REQUIRED_REVISION_ID`
   },
   "documentId":`DOCUMENT_ID`
}