Google Dokümanlar API'yi kullanırken uymanız gereken birkaç ilke vardır. Bunlardan bazıları:
- Verimliliği artırmak için geriye dönük düzenleme
- Ortak çalışma için planlama yapma
WriteControl
alanını kullanarak durum tutarlılığını sağlama- Sekmeleri dikkate alın
Bu ilkeler aşağıdaki bölümlerde açıklanmıştır.
Verimliliği artırmak için geriye dönük düzenleme
documents.batchUpdate
yöntemine 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 planlama yapma
Doküman durumunun değişmesini bekleyin. Bir yöntem çağrısı ile diğeri arasında, diğer ortak çalışanlar dokümanı güncelleyebilir. Aşağıdaki şemada bu durum gösterilmektedir:
Dizinleriniz yanlışsa bu durum hatalara neden olabilir. Birden fazla kullanıcının kullanıcı arayüzünü kullanarak bir dokümanı düzenlediği durumlarda Google Dokümanlar bu işlemi şeffaf bir şekilde yönetir. Ancak API istemcisi olarak uygulamanızın bunu yönetmesi gerekir. Dokümanda ortak çalışma yapmayı planlamasanız bile, savunma amaçlı programlama yapmak ve doküman 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ığı sağlama
Bir dokümanı okuyup güncellediğinizde, documents.batchUpdate
yöntemindeki WriteControl
alanını kullanarak çakışan değişikliklerin nasıl ele alınacağını kontrol edebilirsiniz. WriteControl
, yazma isteklerinin nasıl yürütüleceği konusunda yetki sağlar.
Nasıl kullanacağınız aşağıda açıklanmıştır:
documents.get
yöntemini kullanarak belgeyi alın ve döndürülendocuments
kaynağındanrevisionId
'i kaydedin.- Güncelleme isteklerinizi oluşturun.
- İki seçenekten birini içeren isteğe bağlı bir
WriteControl
nesnesi ekleyin:requiredRevisionId
alanı, yazma isteğinin uygulandığı belgeninrevisionId
değerine ayarlanır. API okuma isteğinden sonra doküman değiştirildiyse yazma isteği işlenmez ve hata döndürülür.targetRevisionId
alanı, yazma isteğinin uygulandığı dokümanınrevisionId
değerine ayarlanır. API okuma isteğinden sonra dokümanda değişiklik yapıldıysa 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üzeltmesine dahil eder. İçerikleri birleştirme işlemi Dokümanlar sunucusu tarafından gerçekleştirilir.
WriteControl
kullanarak toplu istek oluşturma örneği için bu toplu istek örneğine bakın.
Sekmeleri dikkate alın
Tek bir belge, API isteklerinizde özel işlem gerektiren birden fazla sekme içerebilir.
Unutulmaması gerekenler:
- Bir dokümandaki tüm sekmelerdeki içeriği almak için
documents.get
yöntemindeincludeTabsContent
parametresinitrue
olarak ayarlayın. Varsayılan olarak, tüm sekme içerikleri döndürülmez. documents.batchUpdate
yönteminde herRequest
öğesinin uygulanacağı sekmelerin kimliklerini belirtin. HerRequest
, güncellemenin uygulanacağı sekmeleri belirtme yöntemi içerir. Varsayılan olarak, bir sekme belirtilmezseRequest
çoğu durumda dokümandaki ilk sekmeye uygulanır. Ayrıntılar içinRequest
dokümanlarını inceleyin.