Реагировать на вызов .NET Core API после входа в систему через MSAL
Я совершенно новичок в React, и мне было интересно, как я могу автоматически вызывать свой .NET Core Backend API после входа в систему с
msal-react
библиотека?
Для входа в систему я следовал руководству Microsoft (https://docs.microsoft.com/en-us/azure/active-directory/develop/tutorial-v2-react)
Мое приложение автоматически открывает страницу входа в Microsoft при доступе к приложению из-за
MsalAuthenticationTemplate
.
Но есть ли способ прослушать событие или что-то еще, чтобы сразу вызвать мой API после входа в систему?
<MsalAuthenticationTemplate interactionType={InteractionType.Redirect}></MsalAuthenticationTemplate>
<AuthenticatedTemplate>
<div className="App">
<header className="App-header">
<img src={logo} className="App-logo" alt="logo"/>
<p>
<ProfileContent></ProfileContent>
<SignOutButton></SignOutButton>
</p>
</header>
</div>
</AuthenticatedTemplate>
Итак, чего я хочу добиться:
- Войти через MSAL (ВЫПОЛНЕНО)
- Вызов моего Backend API для получения разрешений пользователей: где и как?
1 ответ
Вы должны использовать useeffect для автоматического вызова вашего API после входа в систему.
const [userData, setUserData] = useState([]);
useEffect(() => {
axios
.get("your_api_url/user/")
.then(({ data }) => {
setUserData(data);
})
.catch((err) => console.log(err));
}, []);
Прочтите здесь в дополнение к упомянутому выше руководству.
https://github.com/Azure-Samples/ms-identity-javascript-react-spa