コード例 #1
0
ファイル: Api.php プロジェクト: SharkIng/ss-panel
 public function __invoke(ServerRequestInterface $request, ResponseInterface $response, $next)
 {
     if (Helper::isTesting()) {
         $response = $next($request, $response);
         return $response;
     }
     $accessToken = Helper::getTokenFromReq($request);
     if ($accessToken == null) {
         $res['ret'] = 0;
         $res['msg'] = "token is null";
         $newResponse = $response->withJson($res, 401);
         return $newResponse;
     }
     $storage = Factory::createTokenStorage();
     $token = $storage->get($accessToken);
     if ($token == null) {
         $res['ret'] = 0;
         $res['msg'] = "token is null";
         $newResponse = $response->withJson($res, 401);
         return $newResponse;
     }
     if ($token->expireTime < time()) {
         $res['ret'] = 0;
         $res['msg'] = "token is expire";
         $newResponse = $response->withJson($res, 401);
         return $newResponse;
     }
     $response = $next($request, $response);
     return $response;
 }
コード例 #2
0
ファイル: Auth.php プロジェクト: SharkIng/ss-panel
 public function __invoke(ServerRequestInterface $request, ResponseInterface $response, $next)
 {
     if (Helper::isTesting()) {
         $response = $next($request, $response);
         return $response;
     }
     $user = AuthService::getUser();
     if (!$user->isLogin) {
         $newResponse = $response->withStatus(302)->withHeader('Location', '/auth/login');
         return $newResponse;
     }
     $response = $next($request, $response);
     return $response;
 }
コード例 #3
0
ファイル: Mu.php プロジェクト: xyz12810/ss-panel
 public function __invoke(ServerRequestInterface $request, ResponseInterface $response, $next)
 {
     if (Helper::isTesting()) {
         $response = $next($request, $response);
         return $response;
     }
     $key = Helper::getMuKeyFromReq($request);
     if ($key == null) {
         $res['ret'] = 0;
         $res['msg'] = "key is null";
         $newResponse = $response->withJson($res, 401);
         return $newResponse;
     }
     if ($key != Config::get('muKey')) {
         $res['ret'] = 0;
         $res['msg'] = "token is  invalid";
         $newResponse = $response->withJson($res, 401);
         return $newResponse;
     }
     $response = $next($request, $response);
     return $response;
 }
コード例 #4
0
ファイル: Auth.php プロジェクト: SharkIng/ss-panel
 /**
  * @return User|void
  */
 public static function getUser()
 {
     if (Helper::isTesting()) {
         $user = User::first();
         $user->isLogin = true;
         return $user;
     }
     $sid = Cookie::get('sid');
     $value = self::getCache()->get($sid);
     if ($value == null || !$value) {
         $user = new User();
         $user->isLogin = false;
         return $user;
     }
     $uid = $value;
     $user = User::find($uid);
     if ($user == null) {
         $user = new User();
         $user->isLogin = false;
         return $user;
     }
     $user->isLogin = true;
     return $user;
 }