У меня есть веб-приложениеactjs, которое размещено в службах приложений Azure с использованием аутентификации службы приложений.
Мое приложение проходит проверку подлинности должным образом, и изнутри приложения я пытаюсь получить /.auth/me, чтобыЯ могу прочитать токены доступа, чтобы использовать их для некоторых будущих запросов API, но я получаю 302 в ответ.Ответ перенаправляет на login.microsoft.com, даже если первый запрос (для загрузки приложения) уже был аутентифицирован.
const headers = {
'Accept': 'application/json, text/plain, */*',
'Content-Type': 'application/json',
'credentials': 'include'
};
return (dispatch) => {
const requestOptions = {
method: 'GET',
headers: headers,
};
return fetch("/.auth/me", requestOptions)
.then(parseResponseAndHandleErrors)
.catch(error => {
console.error(error)
});
}
Я думаю, что в GET отсутствует cookie или заголовок, ноДокументы не дают много информации: https://docs.microsoft.com/en-us/azure/app-service/app-service-authentication-how-to#retrieve-tokens-in-app-code
Из вашего клиентского кода (такого как мобильное приложение или JavaScript в браузере) отправьте HTTP-запрос GET по адресу /.auth/me.Возвращенный JSON имеет токены, специфичные для провайдера.
Я пытался установить 'credentials': 'same-origin'
, но это не имело никакого значения.