1. 程式人生 > >小程式如何獲取access_token

小程式如何獲取access_token

小程式如何獲取access_token

首先:獲取access_token需要小程式的appid和AppSecret,這個可以通過“小程式公眾平臺——開發——開發設定”查到

如下,在需要access_token的地方,請求get_access_token()介面,該介面查詢資料庫是否有未過期的access_token,有的話就返回,沒有的話請求 getAccessToken()這個介面獲取新的access_token,並返回。

public static function getAccessToken($routineAppId = '',$routineAppSecret = ''){
    $routineAppId = SystemConfig::getValue('routine_appId');
    $routineAppSecret = SystemConfig::getValue('routine_appsecret');
    $url  ="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$routineAppId."&secret=".$routineAppSecret;
    return json_decode(self::curlGet($url),true);
}


public static function get_access_token(){
    $accessToken = db('routine_access_token')->where('id',1)->find();
    if($accessToken['stop_time'] > time()) return $accessToken['access_token'];
    else{
        $accessToken = self::getAccessToken();
        if(isset($accessToken['access_token'])){
            $data['access_token'] = $accessToken['access_token'];
            $data['stop_time'] = bcadd($accessToken['expires_in'],time(),0);
            db('routine_access_token')->where('id',1)->update($data);
        }
        return $accessToken['access_token'];
    }
}