小程序
app.js
import {
Cache
} from './utils/cache.js';
const cache = new Cache(7200)
// app.js
App({
onLaunch() {
// 展示本地存储能力
const logs = wx.getStorageSync('logs') || []
logs.unshift(Date.now())
wx.setStorageSync('logs', logs)
// 登录
wx.login({
success: res => {
wx.request({
url: 'url',
method:'GET',
data:{
code:res.code
},
success:ret=>{
cache.set('token',ret.data.token)
}
})
}
})
},
globalData: {
userInfo: null
}
})
小程序缓存类
cache.js
// 缓存类 class Cache { // 构造方法 单位秒 constructor({ expire = 3600 }) { // 成员属性 过期时间 // 毫秒 this.expire = new Date().getTime() + expire * 1000; } // 设置 set(key, value) { let data = { expire: this.expire, value }; // 设置缓存 wx.setStorageSync(key, data); } // 永久 forever(key, value) { let expire = new Date().getTime() + 9999999999 * 1000; let data = { expire, value }; // 设置缓存 wx.setStorageSync(key, data); } // 判断是否存在缓存 has(key) { // 获取当前时间 let time = new Date().getTime(); // 缓存数据 let data = wx.getStorageSync(key); if (data != '') { if (time > data.expire) { // 缓存过期 // 删除过期缓存 wx.removeStorageSync(key); return false; } return true; } return false; } // 获取 get(key) { if (this.has(key)) { return wx.getStorageSync(key).value; } return null; } // 删除 del(key) { wx.removeStorageSync(key); } } export {Cache}
后台操作
ThinkPHP6+JWT 中间件校验Token时效性
如果你是第一次安装的话,在命令行下面,切换到你的WEB根目录

本文介绍了如何在ThinkPHP6环境下,结合JWT中间件实现微信小程序的Token自动注册与时效性校验。详细步骤包括:安装多应用模式、JWT扩展,创建登录控制器,配置wx.php,使用curl模拟GET请求,生成与验证Token,创建并应用中间件进行Token校验。
最低0.47元/天 解锁文章
654

被折叠的 条评论
为什么被折叠?



