ASP.NETMVC使用MSAL进行后续登录时缓存为空
创始人
2024-09-19 07:00:35
0

在MSAL中,TokenCache是用于缓存令牌和刷新令牌的关键组件。如果在退出应用程序后重新登录,TokenCache应该仍然包含有效的令牌。但是,当使用ASP.NET MVC进行后续登录时,TokenCache可能会为空,这可能是由于在重新登录时未正确设置TokenCache的原因。

解决此问题的一种方法是在重新登录后使用TokenCache。在HomeController中,您可以使用以下代码来获取缓存并从中获取刷新令牌:

TokenCache tc = new SessionTokenCache(User.Identity.Name, HttpContext);
AuthenticationContext authContext = new AuthenticationContext(authority, tc);
// Get the cached token
result = await authContext.AcquireTokenSilentAsync(todoListResourceId, clientId, UserIdentifier.Any);

其中,SessionTokenCache是自定义缓存类,它从Session中获取和保存令牌。

另一个可行的解决方法是使用AcquireTokenAsync函数来获取令牌。在HomeController中,您可以使用以下代码来获取令牌:

AuthenticationContext authContext = new AuthenticationContext(authority);
result = await authContext.AcquireTokenAsync(todoListResourceId, clientId, redirectUri, new PlatformParameters(PromptBehavior.Auto));

使用此方法获取令牌时,MSAL将自动将令牌写入TokenCache中,因此您不需要自己设置TokenCache。

无论您选择哪种解决方法,都应该能够在ASP.NET MVC使用MSAL进行后续登录时解决缓存为空的问题。

相关内容

热门资讯

黑科技科技(wepoke智能a... 黑科技科技(wepoke智能ai)wepower使用说明书(wepOkE)素来是真的有挂(确实有挂)...
黑科技模拟器(wepoke智能... WePoker透视辅助工具核心要点解析‌,黑科技模拟器(wepoke智能ai)wepoke是机器发牌...
黑科技脚本(wepokeai代... 您好,这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在这款游戏中打牌都...
黑科技辅助挂(wepoke真的... 黑科技辅助挂(wepoke真的有挂)wepoke 软件(wEPOKE)固有真的有挂(有挂猫腻)-哔哩...
黑科技辅助挂(wepoke黑科... 黑科技辅助挂(wepoke黑科技)wepoke软件透明挂演示(wEpOke)一直真的有挂(真的有挂)...
黑科技app(wepoke真的... 此外,数据分析德州()辅助神器app还具备辅助透视行为开挂功能,通过对客户透明挂的深入研究,你可以了...
黑科技智能ai(wepoke辅... 黑科技智能ai(wepoke辅助插件)wepoke软件透明(WEPOke)先前是有挂(果真有挂)-哔...
黑科技模拟器(wepoke透明... 黑科技模拟器(wepoke透明黑科技)wepoke德州扑克用ai代打(WEPOKE)最初存在有挂(有...
黑科技插件(wepoke辅助插... 黑科技插件(wepoke辅助插件)wepoke软件透明(WEPOke)从来是真的有挂(有挂解惑)-哔...
黑科技美元局(wepoke智能... 黑科技美元局(wepoke智能ai)wepoke辅助真的假的(wepoKE)原先真的有挂(竟然有挂)...