网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

篇(11)-Asp.Net Core入门实战-用户登录,记录Cookie,使用Session

入门实战-用户登录,记录Cookie,使用Session

创新互联建站于2013年创立,先为芦山等服务建站,芦山等地企业,进行企业商务咨询服务。为芦山企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

用户登录功能是做项目开发的必备功能,各个业务点中都要读取和使用用户信息,所以用户登录,并记录用户信息可以使用Cookie,Session等功能。

(1).先在Home视图内建立一个Login.cshtml的登录文件,代码如下

(2).然后是Action的编写;还是2个action,一个HttpGet,一个HttpPost;

(3).在HttpPost类型的Action Login内,要进行密码的验证和缓存数据;我贴出代码,注意看关键行注释说明;

[HttpPost]
public IActionResult Login(string userName,string passWord)
{
string uName = userName;
string uPass = passWord;//此处可以对密码进行加密处理
//以用户名,密码为条件,从数据库获取用户对象;
//if(User!=null){则将用户对象使用Cookie/Session缓存}
//代码假定用户名=admin 密码=
if (uName=="admin" && uPass=="")
{
//1.最简单的Cookie用法(不安全的):
CookieOptions options= new CookieOptions();
options.Expires= DateTime.Now.AddMinutes(10);//10分钟后过期
Response.Cookies.Append("cookie_UserName", uName, options);//设置用
Response.Cookies.Append("cookie_UserPass", uPass, options);//设置密码
string _userName = Request.Cookies["cookie_UserName"];//读取cookie用户名
string _userPass = Request.Cookies["cookie_UserPass"];//读取cookie密码
ViewData["_userName"] = _userName;
ViewData["_UserPass"] = _userPass;
//2.使用基于Claim的 Cookie加密认证
//使用前,可以在Startup.cs中配置Cookie信息
var claims = new[] {
new Claim(ClaimTypes.Name,uName),
new Claim("UserPass",uPass) //还可以添加登录时间,ip等信息
};
var claimsIdentity = new ClaimsIdentity(claims, CookieAuthenticationDefaults.AuthenticationScheme);
ClaimsPrincipal user= new ClaimsPrincipal(claimsIdentity);
HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, user,
new AuthenticationProperties() { IsPersistent = true, ExpiresUtc = DateTimeOffset.Now.AddMinutes(20) }
);
return RedirectToAction("Index", "Home");//不同Controller的跳转写法
//return Redirect("Privacy");//同一个Controller下的写法
}
else
{
return RedirectToAction("Error", "Home");
}
}

文章标题:篇(11)-Asp.Net Core入门实战-用户登录,记录Cookie,使用Session
网页网址:http://bjjierui.cn/article/dsopdoi.html

其他资讯