我们写的每个小程序都要有接口,而这些接口不能向外公开,所以要有一个方法来保护自己的接口;
//身份验证
public function checksession($code){
// if(!session('?openid') || !session('?session_key')){
// die('非法用户访问');
// }
// echo $code;
// exit;
if(empty($code)) return false;
$appid="自己的appid";
$secret="自己的secret";
$url="https://api.weixin.qq.com/sns/jscode2session?appid={$appid}&secret={$secret}&js_code={$code}&grant_type=authorization_code";
$ret=https_get($url);
$arr=json_decode($ret,true);
if(isset($arr['openid']) && isset($arr['session_key'])){
session('openid', $arr['openid']);
session('session_key',$arr['session_key']);
// $session_id=session_id();
}else{
die($ret);
}
}
}
我们的小程序的每个页面都要写接口,所以在执行每个页面中的接口所执行的方法都要进行安全监测,所以我们要调用上方所写的方法,并且要在执行每个方法之前都要执行,所以应该用初始化_initialize()方法来包起来:
public function _initialize(){
// echo 'initialize<br/>';
if(!session('?openid')||!session('?session_key')){
die('非法用户访问');
// $this->ajaxReturn(array('error'=>true,'msg'=>'非法用户访问'));
// exit;
}
}