微信小程序获取cookie以及设置cookie
小程序开发中我们需要获取到后端给的cookie进行请求验证,但是微信并没有帮我们保存cookie,那么我们要维持会话需要自己来保存cookie,并且请求的时候加上cookie
1.获取cookie
在登录请求后读取 返回值的, header的cookie,并本地存储
//登录请求回来之后,读取res的header的cookie
//这里的sessionid随便写的,就是个唯一标识wx.setStorageSync("sessionid", res.header["Set-Cookie"])
2.请求带上cookie
//创建header var header;header = { 'content-type': 'application/x-www-form-urlencoded', 'cookie':wx.getStorageSync("sessionid")//读取cookie};//进行请求,一般外层都有一个封装,然后放在公共类里边wx.request({url: realURL,method: method,header: header,//传在请求的header里data: datas,success(res) {//请求成功的处理})}
3.接下来需要将sessinid在本地管理的方法
var sessionkey;var sessiondate;//可以封装一个保存sessinid的方法,将sessionid存储在localstorage中,定为半小时之后清空此sessionid缓存。
function saveSession(sessionId) {console.log(" now save sessionid: " + sessionId)wx.setStorageSync(“sessionkey” sessionId)//保存sessionidwx.setStorageSync(“sessiondate”, Date.parse(new Date()))//保存当前时间,
}// 过期后清除session缓存
function removeLocalSession() {wx.removeStorageSync(“sessionid的key”)wx.removeStorageSync(sessiondate)console.log("remove session!")
}//检查sessionid是否过期的方法function checkSessionTimeout() {var sessionid = wx.getStorageSync(sessionkey)if (sessionid == null || sessionid == undefined || sessionid == "") {console.log("session is empty")return false}var sessionTime = wx.getStorageSync(sessiondate)var aftertimestamp = Date.parse(new Date())if (aftertimestamp - sessionTime >= SESSION_TIMEOUT) {removeLocalSession()return false }return true}//如果sessionid过期,重新获取sessionidfunction checkSessionOk() {console.log("check session ok?...")var sessionOk = checkSessionTimeout()if (!sessionOk) {requestsessionid(function () {})}}//定义一个方法每隔一段时间检查sessionid是否过期function checkcrosstime() {setInterval(checkSessionTimeout, ----)//这个时间可以自定义。比如25 * 60 * 1000(代表25分钟)
}
可以在app.js的onload方法中运行checkcrosstime()方法
微信小程序获取cookie以及设置cookie相关推荐
- 微信小程序获取视口高度,设置 video 视频全屏显示
微信小程序 获取视口高度 获取视口高度 可用于设置视频全屏显示效果 及其他效果显示 js中:(可以在onLoad中直接使用,或写入方法中) let that = this;// 获取系统信息wx.ge ...
- 微信小程序如何从数组里取值_微信小程序获取各种数据值跟设置数据值
微信小程序获取各种数据值跟设置数据值. 修改设置data数组中的某个值://小程序接收后台数据若为数组时,下标最好为默认索引数组,从0开始排序 var articleId ='1'//对应数组中的索引 ...
- 微信小程序获取openid和session_key并且把openid存入数据库
微信小程序开发交流qq群 581478349 微信小程序获取openid和session_key并且把openid存入数据库.已经调用openid的demo 前后端代码都有,后端php实现 在其它 ...
- android获取小程序音频时长,最新微信小程序获取音频时长与实时获取播放进度...
#微信小程序获取音频时长与实时获取播放进度 在小程序官方文档中 audio 注意:1.6.0 版本开始,该组件不再维护.建议使用能力更强的 wx.createInnerAudioContext 接口 ...
- 微信小程序获取unionid为空
微信小程序获取unionid为空 原因:未绑定微信开放平台 绑定步骤 原因:未绑定微信开放平台 最新在调试一个新的微信小程序,因为要对web授权登录.app授权登录.小程序授权登录:几种登录场景根据u ...
- 最新微信小程序获取音频时长与实时获取播放进度
#微信小程序获取音频时长与实时获取播放进度 在小程序官方文档中 audio 注意:1.6.0 版本开始,该组件不再维护.建议使用能力更强的 wx.createInnerAudioContext 接口 ...
- 微信小程序获取绑定授权用户手机号getPhoneNumber-全流程及手机号带*号问题
微信小程序获取微信绑定授权手机号getPhoneNumber全流程及出现手机号带*号问题详解 微信小程序文档中给出如下示例 获取微信用户绑定的手机号,需先调用login接口. 因为需要用户主动触发才能 ...
- 微信小程序获取OneNet数据显示温湿度
微信小程序获取OneNet数据显示温湿度 一.OneNet平台 1.我这里的设备是通过MQTT协议连接到OneNet平台的 2.微信小程序获取OneNet数据需要得到产品的api-key.设备 ...
- 微信小程序获取当前所在城市(地区定位与切换)
小程序地区定位与切换 添加链接描述 添加链接描述 添加链接描述 <text class="chengshi">{{citynames}}</text>< ...
- 微信小程序 获取 手机验证码 短信验证码 后端功能实现解析
本文原创首发CSDN,链接 https://mp.csdn.net/console/editor/html/106041472 ,作者博客https://blog.csdn.net/qq_414641 ...
最新文章
- ML基石_56_TheoryOfGeneralization
- const、static、内部链接属性和外部链接属性整理
- python字典排序
- 谷歌甲骨文Java专利大战终审判决:安卓使用Java不构成侵权
- javafx显示image_JavaFX技巧20:有很多要显示的吗? 使用画布!
- [css] 请说说CSS3实现文本效果的属性有哪些?
- Google 资深软件工程师 LeetCode 刷题笔记首次公开
- 从源码的角度说说Activity的setContentView的原理(二)
- 最低通行费(信息学奥赛一本通-T1287)
- 华为MatePad Pro 5G平板正式发布:售价5299元起!
- 从HTTP响应头看苹果国内用了哪家CDN及CDN高防DDOS技术
- C# 计时工具 Stopwatch
- 从java库学设计模式_java I/O库的设计模式
- 【Codeforces 1051D】Bicolorings
- python怎么用pip安装numpy_python如何安装numpy
- 现代优化算法 (二): 遗传算法 及应用举例
- 音频数字信号详解(2017年11月18日更新)
- 浅谈 Spring 中的设计模式
- 截止失真放大电路_音频功放失真?别急!这里有常见改善方法
- Ftp搜索引擎开发实践
热门文章
- VMware16 安装CentOS8详细教程
- java遍历是什么意思_Java遍历集合方法分析(实现原理、算法性能、适用场合)...
- postman高阶脚本
- SqlServer 一段文本中获取11位的手机号码
- python flask教程百度云,Python Web框架Flask中使用百度云存储BCS实例
- 也谈软件版本控制的问题
- 讽刺c语言,鲁迅先生评价《儒林外史》“婉而多讽”,达到我国古典小说讽刺艺术的高峰。请从小贴士中选择一项,结合作品具体内,赏析《儒林外史》的讽刺艺术:...
- Nexuiz成为射击类游戏最受欢送游戏
- 用C语言编程画出图形,C语言图形编程(六) -图形程序设计实例:零件图形的绘制...
- SpringCloud Nacos入门教程