首页 » PHP教程 » php缓存accesstoken技巧_AccessToken中控做事器就该这样开拓

php缓存accesstoken技巧_AccessToken中控做事器就该这样开拓

访客 2024-11-07 0

扫一扫用手机浏览

文章目录 [+]

access_token是公众号和小程序的全局唯一接口调用凭据,调用"大众年夜众号和小程序各做事端接口时都须要利用到access_token。

微信官方对付逐日接口调用的次数都做了限定,这个中包括了天生access_token的接口,因此官方建议开拓者利用中控做事器统一获取和刷新access_token。

php缓存accesstoken技巧_AccessToken中控做事器就该这样开拓

中控做事器好处在于:1. 担保access_token逐日都不会超出访问限定,担保做事的正常;2. 提高调用其他做事的接口的性能,由于不用再每次调用接口前先发送一次access_token获取要求。

php缓存accesstoken技巧_AccessToken中控做事器就该这样开拓
(图片来自网络侵删)

本文紧张讲解如何开拓一个单文件的access_token中控脚本,该脚本能够同时以命令行和Web形式实行。

思路

首先我们须要利用数据库或Redis存储"大众号或小程序的运用信息,包括appid和appkey。

其次我们须要调用微信获取access_token信息的接口去获取access_token和access_token有效期(默认为expires_in字段)。

末了我们将接口获取到的access_token和有效期缓存到Redis中,这样下次要求access_token时直接从Redis返回未过期的值即可。

函数原型:getAccessToken(string $appid, bool $refresh = true): ?string。
个中参数$appid为"大众年夜众号或小程序的运用ID。
参数$refresh表示是否逼迫刷新缓存。

开拓(PHP版)

第一步、开拓实用工具集Utils

第二步、封装Redis操作

我们须要将运用信息以Hash构造存储到Redis中;在调用接口时为了担保在分布式环境下只许可一个要求能够调用微信接口,因此我们还须要创建一个分布式锁。

PHP环境操作Redis可以通过两个扩展来实现:a. C措辞版phpredis b. PHP版Predis。
C措辞版性能优于PHP版,但是须要编译PHP扩展,因此对付无权限编译扩展的环境下不适用。
本文利用PHP版Predis扩展。

利用Composer直接安装Predis扩展:

composer require predis/predis

第三步、封装微信获取AccessToken接口

第四步、封装微信菜单管理接口作为测试利用

第五步、创建AccessToken中控做事器类

第六步、创建Demo

该demo紧张演示利用中控接口获取access_token,添加"大众号菜单,获取"大众年夜众号菜单。

小技巧

一、获取"大众年夜众号接口测试号

打开公众号开拓文档 > 开始开拓 > 接口测试号申请 > 进入微信公众年夜众号测试号申请系统 > 微信扫码登录即可。

二、获取小程序接口测试号

打开小程序开拓文档 > 工具 > 开拓赞助 > 测试号 > 申请地址 > 微信扫码登录即可。

【点击下面链接下载脚本程序】

"大众号【web说】不局限于web知识分享。

标签:

相关文章

Java代码虚拟化保护技术与应用前景

软件应用的需求日益增长,软件开发过程中对代码的保护成为了一个重要议题。Java作为一种广泛应用于企业级应用的编程语言,其代码虚拟化...

PHP教程 2025-03-02 阅读1 评论0

CAD插件错误代码与应对步骤

CAD(计算机辅助设计)软件在工程设计领域得到了广泛应用。CAD插件作为提升设计效率的重要工具,在提高设计师工作效率的也带来了一定...

PHP教程 2025-03-02 阅读1 评论0

上古卷轴代码规则大全游戏背后的编程奥秘

《上古卷轴》作为一款深受玩家喜爱的角色扮演游戏,自问世以来便以其丰富的世界观、独特的游戏体验和深厚的文化底蕴吸引了无数玩家。在这款...

PHP教程 2025-03-02 阅读1 评论0