container = $container; $this->response = $response; $this->request = $request; $this->JWT = $JWT; } public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface { $header = $request->getHeaders(); try { if($header && isset($header['token']) && $header['token'][0]!='null' && $header['token'][0]!='' && isset($header['token'][0])){ var_dump("token类型:",$header['token'][0]); $ver = $this->JWT->getClaimsByToken($header['token'][0]); $tokenTime = $this->JWT->getTokenDynamicCacheTime($header['token'][0]); if($tokenTime==0){ return $this->response->json( [ 'code' => -1, 'data' => [], 'message' => 'token无效,请重新登录', ] ); } if($header['userurl'][0]){ $origin = $header['userurl'][0]; $data = [ 'website_url'=>$origin ]; $result = $this->websiteServiceClient->getWebsiteId($data); if(!isset($result['data']['id']) || !$result['data']['id']){ return $this->response->json( [ 'code' => -1, 'data' => [], 'message' => '网站不存在...', ] ); } Context::set("SiteId",$result['data']['id']); } // var_dump("中间件:",$ver); Context::set("UserId",$ver['uid']); Context::set("TypeId",$ver['type_id']); if ($ver) { return $handler->handle($request); } }else{ return $this->response->json( [ 'code' => -1, 'data' => [], 'message' => 'token无效,请重新登录', ] ); } }catch (\Exception $e){ var_dump("错误消息1:",$e->getMessage(),$e->getCode()); return $this->response->json( [ 'code' => $e->getCode(), 'data' => [], 'message' => $e->getMessage(), ] ); } return false; } }