Vue3 从入门到实战 进阶式掌握完整知识体系

360 阅读2分钟

download:Vue3 从入门到实战 进阶式掌握完整知识体系

谁说为0基础准备的课,就一定浅薄?本课程带你轻松入门、深度掌握 Vue3,夯实前端硬技能。课程从 Vue3 基础语法,到组件原理,动画,代码设计,再到新语法扩展,由浅入深,全面、系统地梳理 Vue 知识点。在学习过程中,还有老师多年的“避坑经验”倾囊相授 ,并在最后带你按照企业级别代码质量和工程开发流程完成“京东到家”应用,实现对框架的彻底掌握。

适合人群
想要从零开始彻底入门 Vue 的同学;
想要了解清楚 Vue3 原理和新语法的同学;
希望扩展前端知识面,寻求升职加薪机会的同学
技术储备要求
熟悉JS基础语法;
了解Npm开发环境;
了解Webpack基本操作
登錄的逻輯應該是
session中存儲用戶的主要信息
key:guid類型
value: 用戶的信息
cookie中存儲效勞端的session的數據類型
key:CurrentUser //這是一個固定的值
value: session中的key的名字

  1. 相關代码如下:

登錄控製器

//這是一個空過濾過濾器,表示該控製器里的都不停止過濾
[CustomAllowAnonymous]
public class SessionLoginController : Controller
{
[HttpGet]
public IActionResult SessionLogins(int a)
{
if (a == 1)
{
#region Cookie/Session 本人寫 普通運用Sessio爲主
CurrentUser currentUser = new CurrentUser()
{
Id = 123,
Name = "wangjin",
Account = "Administrator",
Email = "1293604064",
Password = "123456",
LoginTime = DateTime.Now
};
//生成一個guid的值用來存儲主键的值
Guid sessionKey = Guid.NewGuid();
//寫Session/寫Cookies
base.HttpContext.SetCookies("CurrentUser", sessionKey.ToString(), 30);
//寫入session
base.HttpContext.Session.SetString(sessionKey.ToString(), Newtonsoft.Json.JsonConvert.SerializeObject(currentUser));
#endregion
return base.Redirect("/Home/Index");
}
return View();
}
}
辦法過濾器

///

/// 辦法過濾器
/// 
public class CustomActionFilterAttribute : Attribute, IActionFilter
{
    /// 

    /// 辦法執行前
    /// 
    /// 
    public void OnActionExecuting(ActionExecutingContext context)
    {
        //表示假如帶有該屬性,就不停止下面的步骤,直接返回
        if (context.ActionDescriptor.EndpointMetadata.Any(item => item.GetType() == typeof(CustomAllowAnonymousAttribute))) //假如標誌的有特殊的記號,就避開檢查;
        {
            return;
        }
        Byte[] bytes;
        context.HttpContext.Session.TryGetValue("CurrentUser", out bytes);
        string cookieKey = CookieSessionHelper.GetCookiesValue(context.HttpContext, "CurrentUser");
        string str = cookieKey != null ? new SessionHelper(context.HttpContext).GetSession(cookieKey) : null;
        if (string.IsNullOrEmpty(str))
        {
            var result = new ViewResult { ViewName = "~/Views/SessionLogin/SessionLogins.cshtml" };
            //result.ViewData = new ViewDataDictionary(_modelMetadataProvider, context.ModelState);
            //result.ViewData.Add("Exception", context.Exception);
            context.Result = result; //斷路器---只需對Result赋值--就不繼續往後了;
        }
        Console.WriteLine("這是辦法執行前");
    }
    /// 

    /// 辦法執行後
    /// 
    /// 
    public void OnActionExecuted(ActionExecutedContext context)
    {
        if (context.ActionDescriptor.EndpointMetadata.Any(item => item.GetType() == typeof(CustomAllowAnonymousAttribute))) //假如標誌的有特殊的記號,就避開檢查;
        {
            return;
        }
        Console.WriteLine("這是辦法執行後");
    }
}