Некоторое время мы успешно использовали Sharepoint REST API для извлечения элементов из списков, но совсем недавно решили интегрировать ADAL.JS, чтобы иметь доступ к другим API Microsoft, таким как Graph, Azure AD и т. Д.
После успешной аутентификации Adal.js автоматически добавляет
Authorization: Bearer eyJ..
для вызовов REST, который отлично работает после небольшого изменения разрешений. Приложение представляет собой Angular SPA, размещенное в Sharepoint, поэтому этот заголовок не нужен, но на самом деле не имеет значения.
ОДНАКО, некоторые из наших вызовов REST требуют, чтобы мы также запросили таксономию, и поскольку это не поддерживается в обычном API REST Sharepoint, мы должны нажать (/ _api / web / lists / GetByTitle ('ListName') / GetItems) с CAML-запросом в качестве полезной нагрузки, т.е. https://mydomain.sharepoint.com/sites/dev/_api/web/lists/GetByTitle('News')/GetItems
К сожалению, это не работает, поскольку API просто возвращает Invalid audience Uri '5exx5cef-x7xx-4xxx-axxx-4xxxx2e40'.
. Пока что мое единственное решение - изменить фактическую библиотеку Adal.JS, чтобы удалить этот заголовок для эта конкретная конечная точка.
Итак, мои вопросы: выполнял ли кто-нибудь CAML-запросы к API-интерфейсам Sharepoint REST с использованием Adal.JS или сталкивался с аналогичной проблемой и может предоставить какое-либо представление?
Я подозреваю, что это проблема конфигурации, но не знаю, что делать.