Использование MS Graph Beta API для создания страницы сайта работает, но не может публиковать - PullRequest
0 голосов
/ 19 июня 2019

У меня есть приложение NodeJS Deamon, использующее разрешения приложения Sites.ReadWrite.All (сервер без пользователя), которое создает новую страницу на сайте SharePoint.Благодаря этому посту я смог успешно создать страницу с некоторым innerHTML. Создание страниц на сайте sharepoint с графиком Microsoft .

Проблема в том, что мне нужно опубликовать страницу, но при публикации в API публикации она возвращает 401 Запрещено.Я могу подумать не над чем, и я волнуюсь, что есть фундаментальная проблема, поскольку один и тот же пользователь должен создавать и публиковать, но после создания страница кажется недоступной и вообще без пользователя.Даже как администратор я не вижу неопубликованные страницы сайта, которые создаются в SharePoint, но я вижу, что общее количество элементов в папке увеличивается при каждом запуске.

// Create page with Graph API
main.createPage = function(siteId, page, token) {
  console.log("createPage");
  var url = ("https://graph.microsoft.com/beta/sites/" + siteId + "/pages/");
  return axios
  .post(url, page,
    { headers: { Authorization: `Bearer ${token}` }}
  )
  .catch(err => console.error(err));
}

После создания сайтаpage Я получаю pageId = result.data.id и передаю его в API публикации.

// Publish page POST /sites/{siteId}/pages/{pageId}/publish
main.publishPage = function(siteId, pageId, token) {
  console.log("publishPage");
  var url = ("https://graph.microsoft.com/beta/sites/" + siteId + "/pages/" + pageId + "/publish");
  return axios
  .post(url,
    { headers: { Authorization: `Bearer ${token}` }}
   )
  .catch(err => console.error(err));
}

response:
   { status: 401,
     statusText: 'Unauthorized'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...