Получить пользователь, выполняющий действие в Sharepoint CSOM - PullRequest
1 голос
/ 30 апреля 2020

Мы используем клиентскую объектную модель SharePoint (CSOM) и конечные точки REST / OData для извлечения / управления данными на разделяемой точке.

  1. В любом случае можно получить информацию о пользователе, выполняющем MOVE на файл (например, переместить файл из папки A в папку B в том же семействе сайтов)? Когда я использую этот вызов API REST до и после перемещения, Author и Editor остаются прежними, даже если совершенно другой пользователь переместил файл из папки A в папку B. Похоже, что SPChangeItem также не имеет членов с этой информацией.

    https://{site_url}/_api/web/GetFileByServerRelativePath(DecodedUrl=@fileUrl)?$expand=Author,ListItemAllFields,ListItemAllFields/ParentList,ListItemAllFields/ParentList/ParentWeb&$select=UniqueId,Author/LoginName,Author/Email,Author/Id,Editor/LoginName,Editor/Email,Name,UserName,ServerRelativeUrl,MajorVersion,MinorVersion,Length,ListItemAllFields&@fileUrl={url_encoded_file_path}
    
  2. Есть ли возможность войти в систему при использовании REST API? Когда я использую этот вызов REST API, Id возвращает пользователя, соответствующего методу доступа Bearer.

    https://{site_url}/_api/Web/CurrentUser?$select=Id
    

1 Ответ

0 голосов
/ 06 мая 2020

При перемещении файла в другую папку метаданные, включая автора / редактора, остаются теми же самыми, что изменило только местоположение. Это разработано.

Если мы хотим узнать пользователя, который выполнил эту операцию, мы могли бы проверить события версии файла, так как он немедленно выдаст событие модификации при перемещении файла.

Конечная точка API отдыха:

_api/Web/GetFileByServerRelativePath('filepath')/VersionEvents

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...