コード例 #1
0
 public function onAuth($args, $kwArgs, $options)
 {
     $sessionId = $kwArgs->sessionId;
     $authToken = $kwArgs->authToken;
     $uid = (int) $kwArgs->uid;
     /** @var ActiveRecord $userClass */
     $userClass = \Yii::$app->user->identityClass;
     /** @var $user ActiveRecord|IdentityInterface|WampUserTrait */
     $user = $userClass::findOne($uid);
     if ($user == null) {
         return ['error' => 'user is null'];
     }
     if ($user->wampGetAuthToken() != $authToken) {
         //            VarDumper::dump([$user->wampGetAuthToken(), $authToken, $sessionId, $user->toArray()]);
         return ['error' => 'authToken'];
     }
     $token = $user->wampGenerateToken($sessionId);
     if ($token) {
         $session = new Session($sessionId, $token, $user->id);
         $session->saveSession();
     }
     //        VarDumper::dump([$kwArgs, $token, $user->toArray()]);
     return ['token' => $token];
 }