header('token',''); $userData = $this->checkUser($token); $request->user = $userData; return $next($request); } /** * 检查数据是否正常 * @param $secret_key */ private function checkUser($token) { if(empty($token)) { throw new AuthException('用户登录凭证错误', 410000); } try{ $memData = (new UserModel) ->alias("u") // ->field("u.*,IFNULL(wt.title,'') as work_type_title") ->field("u.*,wt.title as work_type_title") ->join("user_work_type wt","wt.id = u.work_type_id","left") ->where('u.token',$token) ->find(); if(empty($memData)) { throw new AuthException('用户不存在', 410000); } if($memData['status']==0) { throw new AuthException('用户审核中', 410000); } if($memData['status']==-1) { throw new AuthException('用户已被禁用', 410000); } return $memData->toArray(); }catch (\Throwable $e) { throw new AuthException('系统错误,请重新登录', 410000); } } }