Синхронизация элементов SharePoint с помощью службы REST
Если вы хотите синхронизировать элементы между SharePoint и вашими надстройками или службами, вы можете использовать для этого ресурс GetListItemChangesSinceToken. GetListItemChangesSinceToken, являющийся частью службы SharePoint REST, соответствует вызову веб-службы Lists.GetListItemChangesSinceToken.
Выполните запрос POST, тело которого содержит объект Свойства объекта SP.ChangeLogItemQuery.
Запрос вернет XML-файл с набором строк ADO, которые соответствуют любым изменениям элементов списка, соответствующим указанному запросу. Дополнительные сведения об этих свойствах, в том числе структуры данных свойств, описание элементов CAML и возвращаемые значения, см. в разделе Lists.GetListItemChangesSinceToken.
Пример
POST https://{site_url}/_api/web/Lists/GetByTitle('Announcements')/GetListItemChangesSinceToken`
Authorization: "Bearer " + accessToken
Content-Type: "application/json"
Content-Length: {length of request body as integer}
{
"d" : {
"query": {
"__metadata": {
"type": "SP.ChangeLogItemQuery"
},
"ViewName": "",
"Query": "
<Query>
<Where>
<Contains>
<FieldRef Name='Title' />
<Value Type='Text'>Te</Value>
</Contains>
</Where>'
</Query>,
"QueryOptions": "
<QueryOptions>
<IncludeMandatoryColumns>FALSE</IncludeMandatoryColumns>
<DateInUtc>False</DateInUtc>
<IncludePermissions>TRUE</IncludePermissions>
<IncludeAttachmentUrls>FALSE</IncludeAttachmentUrls>
<Folder>Shared Documents/Test1</Folder>
</QueryOptions>',
"ChangeToken":"1;3;eee4c6d5-f88a-42c4-8ce1-685122984870;634397182229400000;3710",
"Contains": "
<Contains>
<FieldRef Name="Title"/>
<Value Type="Text">Testing</Value>
</Contains>"
}
}
}
Свойства объекта SP.ChangeLogItemQuery
Свойство | Описание |
---|---|
ListName | Строка, которая содержит название или GUID для списка. При запросе таблицы UserInfo строка содержит UserInfo. Использование GUID приводит к повышению производительности. |
ViewName | Строка, содержащая GUID представления, которое необходимо использовать для атрибутов по умолчанию, представленных параметрами query, viewFields и rowLimit. Если этот аргумент не указан, используется представление по умолчанию. Если же он указан, значение параметра query, viewFields или rowLimit переопределяет соответствующее значение в представлении. Например, если в представлении, заданном с помощью параметра viewFields, установлено ограничение на количество строк 100, но параметр rowLimit содержит значение 1000, то в ответе будет 1000 строк. |
Query | Элемент Query, содержащий запрос, который определяет, какие записи возвращаются и в каком порядке. |
QueryOptions | Фрагмент XML следующей формы, содержащий отдельные узлы для различных свойств объекта SPQuery: |
ChangeToken | Строка, содержащая токен изменений для запроса. Описание формата этой строки см. в статье Обзор журнала изменений. Если передается значение null, то возвращаются все элементы списка. |
Contains | Элемент Contains, который определяет настройки фильтрации для запроса. |