微信公眾號獲取AccessToekn
<?php
require_once("../log4php.php");
$logger = init_log("accessToken");
class AcessToken
{
private $appid;
private $secret;
private $url = "https://api.weixin.qq.com/cgi-bin/token";
private $cache_key = "wx_access_token";
private function check_token_exist()
{
global $cache;
if ($cache->check_cache($this->cache_key)) {
return true;
}
return false;
}
/從資料庫中/獲取accesstoken,如果過期或者不存在則重新獲取
public function get_token()
{
global $cache;
if ($this->check_token_exist()) {
return $cache->getCacheValue($this->cache_key);
} else {
return $this->set_token();
}
}
//accesstoken每2個小時過期一次,需要儲存,每1.5小時自動獲取一次並儲存
public function set_token()
{
global $cache, $logger;
$grant_type = "client_credential";
$appid = $this->appid;
$secret = $this->secret;
$this->url .= "?grant_type=" . $grant_type . "&appid=" . $appid . "&secret=" . $secret;
$data = $this->doget($this->url);
$token = json_decode($data, true);
if ($token && empty($token['errcode']) && !isset($token['errcode'])) {
$cache->setCache($this->cache_key, $token['access_token'], 7200);
}
return $token;
}
//請求微信公眾號
public function doget($url)
{
global $logger;
$ch = curl_init();
$timeout = 5;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);//設定header
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$data = curl_exec($ch);
if (!$data) {
$logger->error("請求失敗失敗", curl_error($ch));
}
curl_close($ch);
return $data;
}
//構造
public function __construct($appid, $secret)
{
$this->appid = $appid;
$this->secret = $secret;
}
}
樣例下載地址:https://download.csdn.net/download/jsrdweiting/13685098
相關文章
- php 獲取微信公眾號access_tokenPHP
- TNW-獲取微信公眾號的 access_tokenTNW
- 前端實現微信公眾號授權—獲取openid前端
- 爬取微信公眾號文章工具
- 微信公眾號智慧回答
- 微信公眾號託管
- 微信公眾號開發
- 微信公眾號h5支付 以及獲取code(前端部分)H5前端
- 微搜網·微信公眾號大全
- 微信公眾號投票活動製作教程 微信公眾號投票怎麼弄?
- Java微信公眾號開發之使用攔截器獲取粉絲openIDJava
- 微信公眾號開發-分享
- 微信公眾號的留言功能
- Nodejs微信公眾號開發NodeJS
- 本地測試微信公眾號
- .net開發微信公眾號
- 微信公眾號介面導讀
- 微信公眾號讚賞功能開通方法 微信公眾號讚賞如何開通
- 教你微信公眾號報名的製作方法 微信公眾號報名怎麼用?
- 微信公眾號正文如何插入附件
- 【微信公眾號】配置與應用
- [微信公眾號] 配置與應用
- 微信公眾號自動回覆_JavaJava
- 微信公眾號支付踩坑記
- 微信公眾號-入門的坑
- 微信公眾號選單的配置
- 微信公眾號和微信軟文采集網站網站
- 微信sdk 公眾號 微信支付 NFC 坑&筆記筆記
- 微信公眾號測試號開發小結
- 某微信公眾號AI文章清單AI
- 微信公眾號更新新增選單
- 微信公眾號開發之坑(一)
- Python+Tornado開發微信公眾號Python
- PHP微信公眾號開發——公共方法PHP
- 【Java】微信公眾號開發筆記Java筆記
- Laravel+easywechat 開發微信公眾號Laravel
- 微信公眾號下發紅包 -- PHPPHP
- 展示自己寫的一個獲取淘寶佣金和優惠券的微信公眾號