gpt4 book ai didi

c# - Azure Ad 身份验证不适用于带有 Angular 5.2 新模板的新 asp.net core 2.1。因为我们没有在新模板中路由到家庭 Controller

转载 作者:太空宇宙 更新时间:2023-11-03 12:07:51 25 4
gpt4 key购买 nike

我们已经将 Angular 为​​ 4.3 的 .net 核心 2.1 迁移到 Angular 为 5.2 的 .net 核心 2.1。

现在我们无法从 startup.cs 进行 azure ad 身份验证,因为 MapRoute 定义发生了变化。供引用,

上一个:

app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});

最新:

app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller}/{action=Index}/{id?}");
});

以前,我们过去常常在身份验证后导航到家庭 Controller 和 index.cshtml。但是现在新模板中没有.cshtml。

最佳答案

将我的应用程序从 angular 5/.Net Core 2.0 迁移到 angular 7/.Net Core 2.2 时,我遇到了完全相同的问题,我找到了一种保持身份验证服务器端的方法。解决方案是添加一个中间件来检查每个请求是否都经过身份验证,如果不是,则强制执行。

        app.Use(async (context, next) =>
{
if (!context.User.Identity.IsAuthenticated)
{
await context.ChallengeAsync();
}
else
{
await next();
}
});

关于c# - Azure Ad 身份验证不适用于带有 Angular 5.2 新模板的新 asp.net core 2.1。因为我们没有在新模板中路由到家庭 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54002724/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com