getAttribute("userInfo"); if (empty($user_info)){ return $handler->handle($request); } // 获取请求路径 $path_info = $request->getUri()->getPath(); if (empty($path_info)){ return $handler->handle($request); } $redis = $this->container->get(Redis::class); $redis_key = "lock_request_" . $path_info . $user_info['user_id']; $redis_lock = $redis->setnx($redis_key,1); // 设置过期时间 $redis->expire($redis_key,1); if (!$redis_lock){ // 设置失败,表示已经设置该值 sleep(1); } }catch (\Throwable $e){ // 异常不进行处理 } return $handler->handle($request); } }