您的位置:首页 > 新闻 > 会展 > 万能浏览器手机版下载安装_农产品交易平台_深圳营销策划公司十强_seo网站建设优化

万能浏览器手机版下载安装_农产品交易平台_深圳营销策划公司十强_seo网站建设优化

2024/12/28 2:20:06 来源:https://blog.csdn.net/gc_2299/article/details/144097064  浏览:    关键词:万能浏览器手机版下载安装_农产品交易平台_深圳营销策划公司十强_seo网站建设优化
万能浏览器手机版下载安装_农产品交易平台_深圳营销策划公司十强_seo网站建设优化

  ASP.NET Core使用Session也可以实现身份认证,关于Session的介绍请见参考文献5。基于Session的身份认证大致原理就是用户验证成功后将用户信息保存到Session中,然后在其它控制器中从Session中获取用户信息,用户退出时清空Session数据。百度基于Session的身份认证也有更高级的应用,如参考文献6,不过本文先学习并实践最简单的用法,后续再学习更进一步的用法。
  在Program文件内先调用builder.Services.AddSession函数添加Session服务,可以同时添加如下设置,主要是关于Cookie相关配置(详见参考文献5的Session与Cookie的区别)及过期时间IdleTimeout。然后调用app.UseSession()启用服务,最简单的用法就是这两句。

...
...
builder.Services.AddDistributedMemoryCache();
builder.Services.AddSession(options =>options.IdleTimeout = TimeSpan.FromDays(1));
...
...
app.UseSession();

在这里插入图片描述
  然后在登录函数中用户验证通过后调用HttpContext.Session.SetString或者Set函数保存用户信息,登出函数中调用HttpContext.Session.Clear清空数据。

if (name=="gc_2299" && password=="123456")
{HttpContext.Session.SetString("user", name);return RedirectToAction("Index", "Home");
}

  在其它控制器中获取用户信息时,最简单的用法如下所示:

if (!HttpContext.Session.IsAvailable ||string.IsNullOrEmpty(HttpContext.Session.GetString("user")))
{return RedirectToAction("Login", "Account");
}ViewData.Add("CurUser", HttpContext.Session.GetString("user"));
return View();

  程序运行效果与基于Cookie的身份认证类似,在此不再重复截图,后续继续学习更深入的用法。

参考文献:
[1]https://www.cnblogs.com/boonya/p/18557417
[2]http://www.pzhseo.com/article/dipjeg.html
[3]https://cloud.tencent.com/developer/article/1783650
[4]https://blog.csdn.net/ousetuhou/article/details/135392012
[5]https://blog.csdn.net/weixin_42217767/article/details/92760353
[6]https://www.cnblogs.com/leafroc/p/18347413

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com