Существует несколько принципов, которым следует следовать при использовании API Документов Google. К ним относятся:
- Редактируйте в обратном порядке для повышения эффективности
- План сотрудничества
- Обеспечьте согласованность состояния с помощью
WriteControl
.
В следующих разделах объясняются эти принципы.
Редактируйте в обратном порядке для повышения эффективности
С помощью одного вызова метода BatchUpdate
упорядочите запросы в порядке убывания местоположения индекса. Это избавляет от необходимости рассчитывать изменения индекса из-за вставок и удалений.
План сотрудничества
Ожидайте изменения состояния документа. Между вызовами одного метода и другого другие участники совместной работы могут обновлять документ, как показано на следующей схеме:
Это может привести к ошибкам, если ваши индексы неверны. Когда несколько пользователей редактируют документ с помощью пользовательского интерфейса, Документы Google позаботятся об этом прозрачно, но ваше приложение, будучи клиентом API, должно управлять этим. Даже если вы не ожидаете совместной работы над документом, важно запрограммировать защиту и убедиться, что состояние документа остается согласованным. Чтобы обеспечить согласованность, просмотрите раздел WriteControl
ниже.
Обеспечьте согласованность состояния с помощью WriteControl.
Когда вы читаете и затем обновляете документ, вы можете убедиться, что документ не был обновлен, используя поле WriteControl
в методе BatchUpdate
. Это позволяет вносить изменения в документ, только если версия не изменилась. Вот как вы его используете:
- Получите документ и сохраните включенную в него строку
revisionId
. - Составьте запросы на обновление.
- Включите объект
WriteControl
с требуемымRevisionId, равным сохраненной строке. - При вызове
BatchUpdate
, если версия документа изменилась, он возвращает ошибку и не выполняет обновление.