Microsoft Graph Api / конечная точка календаря возвращает «OrganizationFromTenantGuidNotFound», но конечная точка / users работает без проблем.Как это исправить? - PullRequest
0 голосов
/ 24 января 2019

В настоящее время я пытаюсь добиться в node.js прямого входа в календарь / пользователей Microsoft с помощью Graph API.

На данный момент я сделал следующее:

  1. Войдите в учетную запись и убедитесь, что в настоящее время у нее есть календарь (электронная почта зарегистрирована под @ outlook.com).
  2. Перейдите на портал Azure и создайте новое имя AAD «Календарь Api» web api с обратным URL http://localhost:3000
  3. AAD -> Регистрация приложения -> Имя: Тест, URL ответа: localhost: 3000, Требуемые разрешения для Microsoft Graph (чтение / запись пользователей, Чтение / запись календарей), Windows AAD (offline_access), Предоставление разрешений, Создание нового секретный ключ без даты истечения срока действия.
  4. Пошел к почтальону и начал генерировать новый токен на основе следующего URL:

POST ON -> https://login.microsoftonline.com/{APP_ID_URI}.onmicrosoft.com/oauth2/v2.0/token

И я получу код 200 ОК с токеном.

  1. После проверки токена:

    "aud": "https://graph.microsoft.com", "roles": [ "User.ReadWrite.All", "Calendars.Read", "Calendars.ReadWrite" ],

  2. GET ON -> https://graph.microsoft.com/v1.0/users/ С носителем авторизации и указанным выше токеном.

Вернет код состояния 200 вместе с учетной записью пользователя, которую я использовал на шаге 1.

  1. GET ON -> https://graph.microsoft.com/v1.0/calendars/ С носителем авторизации и указанным выше токеном.

    "Resource not found for the segment 'calendars'.",

  2. GET ON -> https://graph.microsoft.com/v1.0/users/{user_id}/calendars ИЛИ / календарь ИЛИ / календарь Просмотр С носителем авторизации и указанным выше токеном.

    "code": "OrganizationFromTenantGuidNotFound",
    "message": "The tenant for tenant guid '104fdcd9-76d1-4122-89a0-30cb00722de2' does not exist.",
    

У меня действительно нет кода, потому что я сначала использую POSTMAN для тестирования API.

Я бы ожидал получить список событий или список календарей вместо ошибки.

1 Ответ

0 голосов
/ 24 января 2019

После некоторых копаний я выяснил, в чем проблема, так что вот полное решение этого вопроса.

  1. Вам нужна учетная запись Microsoft Office 365 с подпиской, вы можете получить ее, обратившись за помощью в Office 365. Develop.
  2. После создания следуйте инструкциям и добавьте в него приложения.
  3. Перейдите на портал Azure и войдите в свою учетную запись Office 365.
  4. Создание приложения в AAD -> Регистрация приложения
  5. Выполните шаги 4 и 5 этого вопроса.
  6. Попробуйте получить доступ https://graph.microsoft.com/v1.0/users/{user_id}/calendars.
...