Example #1
0
        private static async Task Remember(HttpContext context, int id)
        {
            var guid = Guid.NewGuid();

            context.Response.Cookies.Append("guid", guid.ToString());
            await RememberedGuids.Add(guid, id);
        }
Example #2
0
        public static void Exit(HttpContext context)
        {
            if (context.Session.GetInt32("user_id") != null)
            {
                context.Session.Remove("user_id");
            }
            var guid = context.Request.Cookies["guid"];            //If no cookie - exception or default?

            context.Response.Cookies.Append("guid", "null");
            if (Guid.TryParse(guid, out var parsed))
            {
                RememberedGuids.Remove(parsed);
            }
        }
Example #3
0
        public static async Task AddSessionIfRemembered(HttpContext context)
        {
            var guid = context.Request.Cookies["guid"];            //If no cookie - exception or default?

            if (guid != null && guid != "null")
            {
                var id = await RememberedGuids.GetIdOr0(Guid.Parse(guid));

                if (id > 0)
                {
                    context.Session.SetInt32("user_id", id);
                }
            }
        }