Создать элемент списка с помощью REST API на сайте онлайн-команды Sharepoint - PullRequest
0 голосов
/ 11 декабря 2018

Я пытаюсь создать элемент списка на Sharepoint on line, используя REST API.Когда я создаю элемент на корневом сайте или на корневом / дочернем сайте - все замечательно.Но если я пытаюсь создать элемент списка на сайте Team с URL-адресом, таким как root / commands / msteams_cc6dfd /, я получаю сообщение об ошибке:

'<m:error xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"> <m:code>-2130575251, System.Runtime.InteropServices.COMException</m:code> <m:message xml:lang="en-US">The security validation for this page is invalid. Click Back in your Web browser, refresh the page, and try your operation again.</m:message> </m:error>'

Interisting, этот GETна этом сайте работает нормально, но POST №.

PS Извините за мой сумасшедший английский.

1 Ответ

0 голосов
/ 11 декабря 2018

POST-запросам необходим X-RequestDigest заголовок существует в вашем запросе.Вы можете получить его с текущей страницы или с конечной точки /_api/web/contextinfo.Используйте эту ссылку для примеров: https://docs.microsoft.com/en-us/sharepoint/dev/sp-add-ins/complete-basic-operations-using-sharepoint-rest-endpoints#writing-data-by-using-the-rest-interfaceЧтобы попасть со страницы: "X-RequestDigest": $("#__REQUESTDIGEST").val()Чтобы получить его из contextinfo, создайте GET-запрос к этой конечной точке и извлеките значение параметра FormDigestValue.Я думаю, что это решит вашу проблему.

ОБНОВЛЕНО:

Это может быть проблема с разрешениями.Пожалуйста, проверьте разрешения учетной записи на этих сайтах.Если вы все сделали правильно с X-RequestDigest, то это может быть только проблема с разрешениями.Есть ли у этой учетной записи необходимые разрешения для вызова API?Есть ли у этой учетной записи разрешения на создание элемента списка на этих сайтах в необходимых вам списках?Попробуйте добавить аккаунт в администраторы семейства сайтов.Работает?У ваших списков есть уникальные разрешения?Возможно, учетная запись имеет роль Contribute на сайте, но не имеет доступа к определенному списку, поскольку существуют уникальные разрешения.Можно ли создавать элементы списка не из 1С, а другими способами?Скрипт PowerShell, консольное приложение C #, javascript от некоторых на ваших сайтах SharePoint?Если он работает правильно, то выдайте в коде 1С.

...