Google Docs API를 사용할 때는 몇 가지 원칙을 따라야 합니다. 예를 들면 다음과 같습니다.
- 효율성을 위해 뒤로 수정
- 공동작업 계획
WriteControl
로 상태 일관성 보장
다음 섹션에서는 이러한 원칙을 설명합니다.
효율성을 위해 뒤로 수정
BatchUpdate
메서드에 대한 단일 호출 내에서 요청을 색인 위치의 내림차순으로 정렬합니다. 이렇게 하면 삽입 및 삭제로 인한 색인 변경을 계산할 필요가 없습니다.
공동작업 계획
문서 상태가 변경될 것으로 예상됩니다. 다음 다이어그램과 같이 한 메서드 호출과 다른 메서드 호출 간에 다른 공동작업자가 문서를 업데이트할 수 있습니다.
색인이 잘못될 경우 오류가 발생할 수 있습니다. 여러 사용자가 UI를 사용하여 문서를 편집하기 때문에 Google Docs가 이 작업을 투명하게 처리하지만 앱은 API 클라이언트로서 이를 관리해야 합니다. 문서에 공동작업을 예상하지 않더라도 방어적으로 프로그래밍하고 문서 상태를 일관되게 유지하는 것이 중요합니다. 일관성을 유지하는 한 가지 방법은 아래 WriteControl
섹션을 참고하세요.
WriteControl로 상태 일관성 보장
문서를 읽은 후 업데이트할 때 BatchUpdate
메서드의 WriteControl
필드를 사용하여 문서가 업데이트되지 않았는지 확인할 수 있습니다. 이렇게 하면 버전이 변경되지 않은 경우에만 문서를 수정할 수 있습니다. 이용 방법은 다음과 같습니다.
- 문서를 가져와 문서에 포함된
revisionId
문자열을 저장합니다. - 업데이트 요청을 작성합니다.
- requiredRevisionId가 저장한 문자열로 설정된
WriteControl
객체를 포함합니다. BatchUpdate
를 호출할 때 문서 버전이 변경되면 오류가 반환되고 업데이트를 실행하지 않습니다.