Exemplo n.º 1
0
        public async Task Invoke(HttpContext context)
        {
            string userid   = context.Request.Headers["Auth"];
            string cachekey = "AuthUserInfo_" + userid;

            //如果是登录
            if (context.Request.Path.Value.Contains("/api/v1/UserInfo/add"))
            {
                _memorycache.Remove(cachekey);
            }

            if (!context.Request.Path.Value.Contains("/api/v1/UserInfo/add") &&
                !context.Request.Path.Value.Contains("/api/v1/UserInfo/login") &&
                !context.Request.Path.Value.Contains("/code") &&
                !context.Request.Path.Value.Contains("/createcode") &&
                !context.Request.Path.Value.Contains("/File/") &&
                !context.Request.Path.Value.Contains("/file") &&
                !context.Request.Path.Value.Contains("/doc") &&
                !context.Request.Path.Value.Contains("/profiler/") &&
                !context.Request.Path.Value.Contains("hangfire") &&
                !context.Request.Path.Value.Contains("swagger"))
            {
                if (!string.IsNullOrWhiteSpace(userid))
                {
                    var val = _memorycache.Get <UserInfoOutputDto>(cachekey);

                    if (val != null)
                    {
                        await _next.Invoke(context);
                    }
                    else
                    {
                        await LoginAsync(context, 401, "登录超时,重新登录!");
                    }
                }
                else
                {
                    await LoginAsync(context, 401);
                }
            }
            else
            {
                await _next.Invoke(context);
            }
        }
 private void btnRemove_Click(object sender, RoutedEventArgs e)
 {
     MemoryCacheEx.Remove(3);
 }
Exemplo n.º 3
0
        private static void FromCacheRemoveId(object id)
        {
            string key = GetCacheKeyFromObjectId(id);

            MemoryCacheEx.Remove(key);
        }