Пакетные вызовы графа Microsoft для переименования страниц OneNote завершаются с сообщением «Недопустимое тело JSON для идентификатора запроса» - PullRequest
0 голосов
/ 22 октября 2018

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

Ниже приведен пример с одним запросом на простоту (как правило, в моем сценарии есть более одного запроса).

POST https://graph.microsoft.com/v1.0/$batch

{  
   "requests":[  
      {  
         "id":"1",
         "method":"PATCH",
         "url":"https://graph.microsoft.com/v1.0/me/onenote/pages/1-98c2295df76a4067a6036efc6a8f6f74!84-f754d551-02d2-4416-af42-8fcc644f10e6/content",
         "headers":{  
            "Content-Type":"application/json"
         },
         "body":[  
            {  
               "target":"title",
               "action":"replace",
               "content":"2 - Test1"
            }
         ]
      }
   ]
}

Я получаю ответ 400 на этот вызов со следующим сообщением

{
"error": {
    "code": "BadRequest",
    "message": "Invalid JSON body for request id : 1",
    "innerError": {
        "request-id": "2cc6bfcc-6ce5-471c-af37-181ef0dd5a9e",
        "date": "2018-10-22T10:06:54"
    }
  }
}

Тот же запрос, если я делаю в одномзвонок без партии работает нормально.Я провел достаточно расследований, не смог найти ни одного образца, где массив передается в теле пакетного запроса.Как будто содержимое массива не поддерживается в теле пакетного запроса или вызовы OneNote не полностью совместимы с пакетной обработкой?

Примечание. Я попытался указать содержимое в теле без массива, которое также завершается ошибкой с сообщением «Указанный метод не поддерживается».

1 Ответ

0 голосов
/ 25 октября 2018

URL должен быть относительным, как показано здесь

Попробуйте это с вашим кодом:

"url": " / me / onenote / pages / 1-98c2295df76a4067a6036efc6a8f6f74! 84-f754d551-02d2-4416-af42-8fcc644f10e6 / содержание "

...