流程每次请求接口携带token,进行验证 1.验证成功则返回接口数据 2.验证失败(token过期),小程序重新请求生成新的token,然后请求之前的接口
key值: 随机数+时间戳+盐 value值: id+session_key+openid
演示
小程序端<view> <button bindtap="loadToeknData">携带token请求数据</button></view> Page({ data: { }, onLoad:function(){ // this._loadData(); }, //生成token setToken:function(callback){ // wx.setStorageSync('token', "sfspx64w8x47w14x3zX4x4wf4") var that = this; wx.request({ url: 'http://2021xcx-api.com/api/gettoken', method: 'POST', success: function(res){ console.log(res.data); var data = res.data; if(data.code==1){ //更新新获取的token值 wx.setStorageSync('token', data.token); // 执行回调函数 callback&&callback() }else{ that.setToken(); } } }) }, loadToeknData:function(){ var that = this; wx.request({ url: 'http://2021xcx-api.com/api/orders', method: 'POST', header: { 'content-type': 'application/json', 'token': wx.getStorageSync('token') }, success: function(res){ var data = res.data; console.log(data) if(data.code==903){ // token过期,重新请求设置 // 携带回调函数,token重新获取后继续执行此方法。 that.setToken(that.loadToeknData) } } }) },}) 下载地址: TypeScript命名空间讲解 一篇文章让你看懂Js继承与原型链
|