/**
  * logout
  */
 public function actionClear($tokenid, $clientid)
 {
     $map = $this->getRestMap();
     /**
      * @var AccessToken $token
      */
     try {
         Assert::hasText($tokenid, "tokenid传递参数为空!");
         Assert::hasText($clientid, "clientid传递参数为空!");
         //验证token
         $token = AccessTokenService::validateToken(Yii::app()->request);
         Assert::hasText($token, "token 查询结果为空!");
         //清理
         AccessTokenService::clearToken(Yii::app()->request);
         $map["clientid"] = $token->clientid;
         $map["tokenid"] = $token->tokenid;
         $map[AjaxStatus::PROPERTY_MESSAGES] = "清理成功";
         $map[AjaxStatus::PROPERTY_STATUS] = AjaxStatus::STATUS_SUCCESSFUL;
         $map[AjaxStatus::PROPERTY_CODE] = AjaxStatus::CODE_OK;
     } catch (IllegalArgumentException $e) {
         $map[AjaxStatus::PROPERTY_STATUS] = AjaxStatus::STATUS_FAILED;
         $map[AjaxStatus::PROPERTY_CODE] = AjaxStatus::CODE_503;
         $map[AjaxStatus::PROPERTY_MESSAGES] = $e->getMessage();
     } catch (Exception $e) {
         $map[AjaxStatus::PROPERTY_STATUS] = AjaxStatus::STATUS_FAILED;
         $map[AjaxStatus::PROPERTY_CODE] = AjaxStatus::CODE_503;
         $map[AjaxStatus::PROPERTY_MESSAGES] = $e->getMessage();
     }
     echo SnapshotHelper::encodeArray($map);
 }