php 微信 图片 文字 朋友圈,ThinkPHP实现微信分享好友转发朋友圈自定义图片和文字...

本文介绍了如何修改Jssdk.php文件以正确设置路径,并实现微信access_token的缓存管理。通过修改构造函数设置文件路径,然后在get_php_file函数中使用该路径读取文件。同时,更新了getAccessToken函数,使用缓存存储access_token并处理过期情况,确保了令牌的有效性和全局一致性。
摘要由CSDN通过智能技术生成

修改Jssdk.php文件首先我们需要在构造函数中设置 $this->path = __DIR__ . DS;即:namespace wechat;

class Jssdk {

private $appId;

private $appSecret;

private $path;

public function __construct($appId, $appSecret) {

$this->appId = $appId;

$this->appSecret = $appSecret;

$this->path = __DIR__ . DS;

}

...

}

将get_php_file函数返回值中的$filename改为 $this->path.$filename,即:private function get_php_file($filename) {

return trim(substr(file_get_contents($this->path.$filename), 15));

}设置token的缓存,修改getAccessToken,加入cacheprivate function getAccessToken() {

// access_token 应该全局存储与更新,以下代码以写入到文件中做示例

// cache('at', ['access_token'=>'sss', 'expire_time' => '123']);

// $data = json_decode($this->get_php_file("access_token.php"));

$data = cache('at');

if ($data['expire_time'] < time()) {

// 如果是企业号用以下URL获取access_token

// $url = "https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$this->appId&corpsecret=$this->appSecret";

$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$this->appId&secret=$this->appSecret";

$res = json_decode($this->httpGet($url));

$access_token = $res->access_token;

if ($access_token) {

// $data->expire_time = time() + 7000;

// $data->access_token = $access_token;

cache('at', ['access_token'=>$access_token, 'expire_time' => time() + 7000]);

// $this->set_php_file("access_token.php", json_encode($data));

}

} else {

$access_token = $data['access_token'];

}

return $access_token;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值