时间:2021-07-01 10:21:17 帮助过:5人阅读
* @link http://www.jieone.com/ */ class Token extends RSA{ /** * 客户端唯一ID */ private $date=0; private $clientID="abccccc"; /** * 系统access_token,即要保存于客户端的数据 */ private function sys_access_token(){ $array=array( 'clientID'=>$this->clientID, 'date'=>$this->date ); $sys_access_token = json_encode($array); //RSA公钥加密 return $this->public_encrypt($sys_access_token); } /** * 保存access_token */ public function get_access_token(){ if(empty($_COOKIE['access_token'])){ $this->date=time()-100; return $this->sys_access_token(); } return $_COOKIE['access_token']; } /** * 保存access_token */ private function save_access_token(){ setcookie("access_token",$this->sys_access_token()); } public function check(){ $access_token=$this->get_access_token(); //RSA私钥解密 $access_token = $this->private_decrypt($access_token); //信息已被非法篡改 if(empty($access_token)){ return false; } $object=json_decode($access_token); //2秒只能ajax请求一次,可修改 if ($object->date + 2 > time()){ return false; } //保存access_token $this->date=time(); $this->save_access_token(); return true; } } echo '频繁刷新试试
'; $Token=new Token(); if(!$Token->check()){ echo '您请求过快,请稍后再试
'; exit(); } echo '访问正常
'; echo "您当前access_token:".$Token->get_access_token();
以上就介绍了PHP限制频繁请求,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。