En iyi sonuçlar için en iyi uygulamalar

Google Dokümanlar API'sını kullanırken izlemeniz gereken birkaç ilke vardır. Bunlardan bazıları:

  • Verimlilik için geriye doğru düzenleyin
  • Ortak çalışma için plan yapın
  • WriteControl alanını kullanarak durum tutarlılığını sağlayın

Aşağıdaki bölümlerde bu ilkeler açıklanmaktadır.

Verimlilik için geriye doğru düzenleyin

documents.batchUpdate yöntemine yapılan tek bir çağrıda, isteklerinizi dizin konumuna göre azalan düzende sıralayın. Bu sayede, ekleme ve silme işlemlerinden kaynaklanan dizin değişikliklerini hesaplama ihtiyacı ortadan kalkar.

Ortak çalışma için plan yapın

Belge durumu değişebilir. Bir yöntem çağrısı ile diğer yöntem arasında, diğer ortak çalışanlar aşağıdaki şemada gösterildiği gibi dokümanı güncelleyebilir:

Bir doküman, yöntem çağrıları arasında nasıl geçiş yapabilir?

Dizinleriniz yanlışsa bu durum hatalara neden olabilir. Birden çok kullanıcının bir dokümanı kullanıcı arayüzünü kullanarak düzenlediği bir ortamda, Google Dokümanlar bu işi şeffaf bir şekilde halleder. Ancak, API istemcisi olarak uygulamanız bunu yönetmelidir. Belge üzerinde iş birliği yapmayı düşünmüyorsanız bile koruma amaçlı programlama yapmanız ve belge durumunun tutarlı olmasını sağlamanız önemlidir. Tutarlılığı sağlamanın bir yolu olarak WriteControl bölümünü inceleyin.

WriteControl ile durum tutarlılığı oluşturun.

Bir dokümanı okuyup güncellerken documents.batchUpdate yöntemindeki WriteControl alanını kullanarak rekabet eden değişikliklerin işlenme davranışını kontrol edebilirsiniz. WriteControl, yazma isteklerinin yürütülme şekli konusunda yetki sağlar.

Bunu şu şekilde kullanabilirsiniz:

  1. documents.get yöntemini kullanarak belgeyi alın ve döndürülen documents kaynağındaki revisionId kaynağını kaydedin.
  2. Güncelleme isteklerinizi oluşturun.
  3. İki seçenekten biriyle isteğe bağlı bir WriteControl nesnesi ekleyin:
    1. requiredRevisionId alanı, yazma isteğinin uygulandığı belgenin revisionId değerine ayarlanır. Belge, API okuma isteğinden sonra değiştirildiyse yazma isteği işlenmez ve bir hata döndürür.
    2. targetRevisionId alanı, yazma isteğinin uygulandığı belgenin revisionId değerine ayarlanır. Doküman, API okuma isteğinden sonra değiştirildiyse yazma isteği değişiklikleri ortak çalışan değişikliklerine uygulanır. Yazma isteğinin sonucu, hem yazma isteği değişikliklerini hem de ortak çalışan değişiklikleri, dokümanın yeni bir düzeltmesine dahil eder. İçeriğin birleştirilmesinden Dokümanlar sunucusu sorumludur.

WriteControl kullanarak toplu istek oluşturma örneği için bu toplu istek örneğine bakın.