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
WriteControl
alanını kullanarak durum tutarlılığını sağlama- Sekmeleri dikkate alın
Aşağıdaki bölümlerde bu ilkeler açıklanmaktadı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. 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:
Dizinleriniz yanlışsa bu durum hatalara yol açabilir. 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ığı 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:
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 belge değiştirilirse yazma isteği işlenmez ve hata döndürür.targetRevisionId
alanı, yazma isteğinin uygulandığı belgeninrevisionId
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.
Aşağıdakileri unutmayın:
- 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 her birRequest
öğesinin uygulanacağı sekmelerin kimliklerini belirtin. HerRequest
, güncellemenin uygulanacağı sekmeleri belirtmenin bir yolunu içerir. Varsayılan olarak, bir sekme belirtilmezseRequest
çoğu durumda dokümandaki ilk sekmeye uygulanır. Ayrıntılar içinRequest
dokümanlarına bakın.