public function actionV() { // $dir = '/Volumes/web/material/IMG_0401.JPG'; // $data = (new UploadFile())->UploadDir($dir, 'pubilc'); /* $lng = '121.46471'; $lat = '31.221702'; $lng2 = '121.503'; $lat2 = '31.241973'; $data = $this->getDistance($lng,$lat,$lng2,$lat2);*/ //$data = $this->getCoor($lng,$lat); $arr = ['uid' => 1, 'code' => 364896, 'token' => '545452kdjsdfsd932']; $str = Encrypt::getInstance()->encrypt($arr); echo $str . '<br>' . strlen($str) . '<br>'; $key = 'token'; $obj = new Prpcrypt($key); $data = $obj->encrypt(serialize($arr)); echo '<pre>'; print_r($data[1]); echo '<br>'; echo strlen($data[1]); echo '<br>'; $data = $obj->decrypt($data[1]); print_r(unserialize($data[1])); }
/** * @param $token * @return bool * @throws UnauthorizedHttpException */ public static function checkAccessToken($token) { $tokenArr = Encrypt::getInstance()->decrypt($token); if ($tokenArr) { return self::verificationToken($tokenArr); } else { throw new UnauthorizedHttpException('Illegal access token'); } }
/** * * @return bool|string */ public function createdToken() { if ($data = $this->getAccountInfo()) { $rand = RandCode::getInstance(); $tokenArr['uid'] = $data['uid']; $tokenArr['code'] = $rand->createCode(1, 6, 1)[0]; $tokenArr['token'] = $rand->createCode(1, 32)[0]; $accessToken = Encrypt::getInstance()->encrypt($tokenArr); $cache['key'] = TOKEN_KEY . $data['uid']; $cache['expire'] = TOKEN_EXPIRE; $status = Memcached::getInstance($cache)->set($tokenArr); if ($status) { return Format::messages(0, 'get token success', ['access_token' => $accessToken, 'expire' => TOKEN_EXPIRE]); } } return Format::messages(100001, 'the user has not authorized'); }
/** * Parameter Handling */ protected function beforeRun() { if (Yii::$app->request->isGet) { $this->data = Yii::$app->getRequest()->getQueryParams(); } else { $param = Yii::$app->getRequest()->getRawBody(); if ($param) { $param = json_decode($param, true); if (json_last_error() !== JSON_ERROR_NONE) { $this->data = $param; } } $this->data['token'] = Yii::$app->getRequest()->getQueryParam('token'); } if ($this->data['token']) { $this->tokenArr = Encrypt::getInstance()->decrypt($this->data['token']); } return true; }