本指南將介紹構成 Google 文件 API 的主要要求和回應方法,以及如何批次更新文件。
您可以透過 HTTP 要求叫用 Google 文件 API,也可以在語言專屬用戶端程式庫中叫用方法。這兩者大致相同。
Google 文件 API 會傳回 HTTP 回應,其中通常包含要求調用的結果。使用用戶端程式庫發出要求時,系統會以特定語言傳回回應。
要求方法
文件 API 支援下列方法:
documents.create
: 建立空白的 Google 文件。documents.get
: 傳回指定文件的完整例項。您可以剖析傳回的 JSON,擷取文件內容、格式和其他功能。documents.batchUpdate
: 提交要以原子方式套用至文件的編輯要求清單,並傳回結果清單。
documents.get
和 documents.batchUpdate
方法需要 documentId
做為參數,才能指定目標文件。documents.create
方法會傳回所建立文件的例項,您可從中讀取 documentId
。如要進一步瞭解 documentId
,請參閱文件 ID。
請注意,您無法使用 documents.get
方法擷取已發布的文件。發布後,公開文件會使用不同的網址格式。嘗試使用網址的新 documentId
和 documents.get
方法時,會傳回 404
HTTP 狀態碼回應。無法從發布的網址擷取原始 documentId
。如要解決這個問題,可以使用 Drive API 將已發布的文件複製到共用文件,然後改為存取該檔案。詳情請參閱「公開 Google 文件、試算表、簡報和表單」。
批次更新
documents.batchUpdate
方法會採用 request
物件清單,每個物件都會指定要執行的單一要求。舉例來說,您可以先設定段落格式,然後加入內嵌圖片。系統會先驗證每項要求,再套用要求,並按照要求在批次要求中的顯示順序處理要求。
系統會以不可分割的形式套用批次更新中的所有要求。也就是說,如果任何要求無效,整個更新就會失敗,且不會套用任何 (可能相依的) 變更。
部分 documents.batchUpdate
方法會提供回應,說明已套用的要求。這些方法會傳回包含 response
物件清單的回應主體。其他要求則不需要傳回資訊,只要顯示空白回覆即可。回應清單中的物件與對應要求佔用相同的索引順序。
以下是常見的批次要求模式:
requests = []
requests.append(first request)
requests.append(second request)
...
body = ... & requests & ...
...batchUpdate(body)
如要完整瞭解如何批次處理文件 API 呼叫,以及要求和回應類型的documents.batchUpdate
參考說明文件,請參閱批次要求最佳做法。
批次更新作業
批次更新要求有多種,以下是要求類型的分類。