En iyi sonuçlar için en iyi uygulamalar

Google Docs API'yi kullanırken uymanız 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ğlama

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şlemleri nedeniyle dizin değişikliklerini hesaplama ihtiyacını ortadan kaldırır.

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

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

Bir dokümanın yöntem çağrıları arasında nasıl geçiş yapabileceği.

Dizinleriniz yanlışsa bu durum hatalara neden olabilir. Birden fazla kullanıcı, kullanıcı arayüzünü kullanarak bir dokümanı düzenlerken Google Dokümanlar bunu şeffaf bir şekilde halleder. Ancak API istemcisi olarak uygulamanızın bunu yönetmesi gerekir. Belgede ortak çalışma öngörmüyorsanız bile, savunmaya göre programlama yapmak ve belge durumunun tutarlı kalmasını sağlamak önemlidir. Tutarlılığı sağlamanın bir yolu için WriteControl bölümünü inceleyin.

WriteControl ile durum tutarlılığı oluşturma

Bir dokümanı okuyup daha sonra güncellediğinizde documents.batchUpdate yöntemindeki WriteControl alanını kullanarak rakip değişikliklerin nasıl işleneceğini kontrol edebilirsiniz. WriteControl, yazma isteklerinin yürütülme şekli konusunda yetki sağlar.

Nasıl kullanacağınız aşağıda açıklanmıştır:

  1. documents.get yöntemini kullanarak belgeyi alın ve döndürülen documents kaynağından revisionId değerini kaydedin.
  2. Güncelleme isteklerinizi oluşturun.
  3. İki seçenekten birini kullanarak isteğe bağlı bir WriteControl nesnesi ekleyin:
    1. requiredRevisionId alanı, yazma isteğinin uygulandığı dokümanın revisionId değerine ayarlanır. API okuma isteğinden sonra belge değiştirilirse yazma isteği işlenmez ve hata döndürür.
    2. targetRevisionId alanı, yazma isteğinin uygulandığı belgenin revisionId değerine ayarlanır. API okuma isteğinden sonra belge 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şikliklerini dokümanın yeni bir düzeltmesini içerir. İç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.