Taro -- 微信小程序登录
Taro微信小程序登录
2.调用Taro.request()将code传到服务器;
3.服务器端调用微信登录校验接口(appid+appsecret+code),获得session_key+openid;
4.服务器端生成AUTH_TICKET(相当于userId),使用AUTH_TICKET为key,session_key+openid为value的形式存在服务器,并将AUTH_TICKET传送给客户端;
5.客户端本地存储AUTH_TICKET,登录成功!
6.下次登录时可以用AUTH_TICKET传输到服务器端验证登录态是否过期,未过期则登录成功。
小程序API中Taro.checkSession()可以校验用户当前session_key是否有效。
//检测sessionkey Taro.checkSession({success: function() {//console.log("session_key 未过期")//session_key 未过期,并且在本生命周期一直有效 },fail: function() {// session_key 已经失效,需要重新执行登录流程// 登录this.gotologin()}})
登录的代码:
gotologin = () => {var that = this//清除缓存 Taro.clearStorageSync()// 登录 Taro.login({success: res => {// 发送 res.code 到后台换取 openId, sessionKey, unionIdif (res.code) {//发起网络请求 Taro.request({url: that.globalData.path + '/miniLogin/login.ajax',data: {code: res.code},success: res => {let mylogininfo = res.data.dataif (mylogininfo != null) {Taro.setStorageSync('logininfo', mylogininfo)console.log(mylogininfo)//登录验证 拿openid换AUTH_TICKET Taro.request({method: 'post',url:that.globalData.path +'/miniLogin/loginCheck.ajax',header: {'Content-Type': 'application/x-www-form-urlencoded'},data: {openid: mylogininfo.openid,unionid: mylogininfo.unionid ? mylogininfo.unionid : '',phoneNo: ''},success: res => {let mdata = res.dataif (mdata.code == 200) {Taro.showToast({title: '登录成功',icon: 'success',duration: 2000})// 存储AUTH_TICKET Taro.setStorageSync('AUTH_TICKET',mdata.data.AUTH_TICKET)// 携带AUTH_TICKET请求接口,获取数据 Taro.request({method: 'post',url:that.globalData.path + '/comLogin/statffCompany.ajax',header: {'Content-Type': 'application/x-www-form-urlencoded','weixinauth': mdata.data.AUTH_TICKET},success: function(res) {console.log(res)}})} else if (mdata.code == 400) {//此ID未绑定//获取手机号码绑定 }}})} else {console.log(res.data)}}})} else {console.log('登录失败!' + res.errMsg)}}})}
转载于:https://www.cnblogs.com/juewuzhe/p/11130475.html
Taro -- 微信小程序登录相关推荐
- access突然需要登录_早知道早好,微信小程序登录开发需要注意的事项
最近公司要做一个企业微信的小程序,方便企业内的成员来登录,以便一些公司内的业务,只限于公司内的成员来操作,因为有微信小程序的开发经验,所以先当作微信小程序来开发了! 首先来讲一下这个企业微信小程序与微 ...
- 微信小程序登录-利用Oenid实现白名单和黑名单
微信小程序登录-利用Oenid实现白名单和黑名单 1.通过获取openid 存储到数据库中 2.结合数据库中额用户资料实现白名单和黑名单.
- Spring Boot + 微信小程序——登录凭证校验DEMO
基本概念 微信小程序-登录凭证校验:通过 wx.login 接口获得临时登录凭证 code 后传到开发者服务器调用此接口完成登录流程. 微信小程序API https://developers.weix ...
- sessionkey 微信小程序获取_微信小程序登录,获取code,获取openid,获取session_key...
微信小程序登录 wx.login(Object object) 调用接口获取登录凭证(code).通过凭证进而换取用户登录态信息,包括用户的唯一标识(openid)及本次登录的会话密钥(session ...
- uni-app微信小程序登录授权
uni-app微信小程序登录授权 首先是需要用到一个授权按钮来触发获取用户信息授权: 关键在于 open-type 为 getUserInfo , 然后有个@getuserinfo的事件,把获取授权接 ...
- php与ipa接口登录验证失败,thinkPHP5.0开发微信小程序登录接口signature验证失败
我用TP5开发微信小程序登录接口的时候,在校验签名signature那遇到了个坑,一直校验失败,找了很久才发现 原因是:tp的input方法会自动转移html字符,比如'"'转成了 & ...
- 小程序 微信统计表格_微信小程序登录机制
" 不是0,也不是1,有0也有1 " 总有一个瞬间,你想记录当下的一些事情,所以有了这篇文章,不会口吐芬芳,我直接开门了,但愿能让你见山. 1. 背景 21 届的校园招聘已经打响了 ...
- 微信小程序登录 返回 -41003
微信小程序登录解密失败 小程序登录的时候,通过客户端获取的code等加密的信息,传给后端解密,可是后端解密返回 -41003 问题踩坑过程 复现流程: 用户点击授权按钮.通过 按钮绑定 getUser ...
- java后端微信小程序登录与注册
java后端微信小程序登录与注册&微信登录授权 分析: 微信小程序用户表 的字段来源于微信服务器 , 必须想办法去获取到对应的用户信息 找到微信开放平台: 微信开放平台 以下是微信开放平台给出 ...
最新文章
- 关于ios phone APP生命周期的一点理解
- 静态方法和实例化方法的本质区别
- c++面向对象高级编程 学习八 non-explicit-one-argement-ctor
- 前端之 BOM 和 DOM
- JavaExcel工具类(兼容xls和xlsx)
- Linux系统下文件与目录操作讲解
- 复旦邱锡鹏Lab提出:一个统一的面向基于Aspect的所有情感分析子任务的生成式方法...
- 《天道》中最智慧的4句话,看懂改变一生
- python django开发教程_Python自动化运维Django入门
- 中国近代史-蒋廷黻-笔记-第一章-剿夷与抚夷-第二节-英国人做鸦片买卖
- 数字信号处理之数字混频
- word2010中“不包含”、“不存在”等特殊字符的输入方法
- Theorem、Proposition、Lemma和Corollary等的解释与区别
- 讯时后台编辑器在IE8下无法打开窗口的解决办法
- 独家可用发卡小程序源码下载卡密系统
- CSS揭秘:6.复杂的背景图案(下)
- 计算机发明者约翰·冯·诺依曼
- python PIL获取图片像素点
- ios点击大头针气泡不弹出_高德 ios 自定义气泡添加点击事件无效问题
- 解决macos13卡死转圈
热门文章
- iOS开发实战-时光记账Demo 本地数据库版
- Maven修改默认本地资源库文件夹
- JQ-CSS-实现导航菜单效果
- 设置Eclipse智能提示(转)
- 在.NET 3.5 平台上使用LINQ to SQL创建三层/多层Web应用系统(Part5) 转
- [转贴]超过80%的80后大学生不知道自己将来要干什么
- 虚拟机服务器503解决,(图文)解决重启VCSA 6.0提示:503 Service Unavailable错误
- apache php wordpress,windows 安装 apache php wordpress
- uniapp 子组件 props拿不到数据_Vue组件间的通信
- C++知识点38——拷贝赋值运算符、析构函数、=default、阻止拷贝和赋值