route()->getName();//获取当前路由 if (in_array($clientRoute, $this->noAuth)) {//不需要验证的路由 return $next($request); } //获取token $api_token = $request->input('api_token'); if(empty($api_token))$api_token=$request->header('ApiToken'); if(empty($api_token)){ return response()->json([ 'msg' => '缺少认证信息', 'code' => 401, 'data' => [] ]); } //获取当前用户 $user = RedisDataServer::creatServer()->getData( 'adminApiLogin_' . $api_token, 'json'); if(!$user){ //数据库查找当前用户 $user=User::where('api_token',$api_token)->where('status',1)->where('is_del',0)->first(); if($user){ //用户信息缓存 RedisDataServer::creatServer()->setData('adminApiLogin_' . $api_token, $user, 'json', 30); }else{ return response()->json([ 'msg' => '请先登录', 'code' => 401, 'data' => [] ]); } } //进行路由验证 $ret = PermissionServer::verifyAuth($user['roles_id'], $clientRoute); if (empty($ret) && $user['id'] != 1) { return response()->json([ 'msg' => '暂无权限', 'code' => 402, 'data' => [] ]); } $request->admin_user = $user; //日志记录 AdminLogsServer::write('',$user['id']); return $next($request); } }