Вызовы Graph API в OnPremise Exchange работают только в Playground
Наша установка - это локальный сервер Exchange, доступный через графический интерфейс api. https://docs.microsoft.com/en-us/graph/hybrid-rest-support
Мы сталкиваемся с проблемой, что наш токен работает только "частично". И токен, созданный "Graph-Playground", полностью рабочий. Но мы не можем найти никакой разницы.
- Когда я использую Graph-Playground или использую токен, сгенерированный Graph-Playground => все запросы работают
- Когда я создаю токен (при регистрации в приложении) => работают только некоторые запросы
Токен кажется действительным, некоторые вызовы, такие как / me, работают, но все вызовы, связанные с обменом, например / me / contacts, не работают с этой ошибкой
Запрос, они работают с токеном, сгенерированным почтальоном:**
Ошибка:
{"ошибка": { "код": "MailboxNotEnabledForRESTAPI", "сообщение": "REST API еще не поддерживается для этого почтового ящика". }}
(это очень общая ошибка, и в основном ничего не говорится о реальной проблеме)
Генерация токенов:
Я создаю свой токен так же, как Graph-Playground создает токен (OAuth - неявный поток):
Токен - Анализ:
Кстати, он работал несколько дней, никто ничего не менял:)
Поэтому я понятия не имею, почему "Графическая площадка" может создавать рабочий токен, а мой токен работает только "частично". Вы можете мне помочь?
Тема уже существует, но я не ее владелец. Также больше нет ответов... Я не могу предоставить вознаграждение за сторонний поток, поэтому создаю новый поток. Вы можете найти это здесь:
MailboxNotEnabledForRESTAPI - интеграция API Microsoft Graph с локальным сервером HMA с поддержкой
1 ответ
Признаю вашу ошибку, мы видим ее в нескольких случаях (для Office 365):
- У пользователя нет лицензии на Exchange (наверное, не так, так как она работает в проводнике).
- Клиент-клиент настроил дополнительную безопасность.
Вы можете ограничить приложения определенными почтовыми ящиками . Возможно, на вашем локальном Exchange также есть какие-то настройки или политики, вам нужно подключиться к Exchange Online Powershell, чтобы установить их, так что, возможно, вы найдете что-то там. Это просто дикая догадка.
Чтобы отследить эту проблему, я бы начал проверять локальные журналы Exchange.
Вы пробовали использовать
/users/{upn}/calendar
конечная точка? Может дело в том, что
/me/
часть не работает.