uniapp微信小程序授权登录

authLogin() { ////弹窗授权 //showModal用于触发uni.getUserProfile弹窗 uni.showModal({ title: '授权登录', content: '是否授权登录微信小程序?', success: (e) => { if (e.confirm) { console.log('用户点击确定'); uni.getUserProfile({ desc: '登录后可同步数据', lang: 'zh_CN', success: (infoRes) => { console.log('用户信息-----------', infoRes) console.log('用户个人信息-----------', infoRes.rawData) //获取code uni.login({ provider: 'weixin', success: (loginRes) => { console.log('获取code-----------', loginRes) //调用接口传递参数 let parames = { code: loginRes.code, encryptedData: infoRes .encryptedData, iv: infoRes.iv, signature: infoRes.signature, rawData: infoRes.rawData }; console.log('将参数传给后端-----------', parames) uni.request({ url: 'https://xxx.com/api/Login', data: parames }).then((res) => { //获取到 openid 和 session_k后,自己的逻辑 if (res.code == 200) { console.log('授权登录成功', res); console.log('授权登录成功w_openid',res.w_openid); uni.setStorage({ key: 'oppen_ID', data: res.w_openid, success: function() { } }); uni.reLaunch({ url: '/pages/index/index' }) } else { uni.showToast({ icon: 'none', title: '授权失败' }) } }); }, fail: function(err) { uni.showToast({ icon: 'none', title: '授权失败' }) } }); }, fail: function(err) { uni.showToast({ icon: 'none', title: '授权失败' }) } }); } else if (e.cancel) { console.log('用户点击取消'); uni.showToast({ icon: 'none', title: '取消授权' }) } } }) }

//未弹窗授权 // 获取用户信息, 传给后端换取openid / uuid uni.getUserInfo({ provider: 'weixin', success: function(infoRes) { console.log('infoRes', infoRes) //获取code uni.login({ provider: 'weixin', success: (loginRes) => { console.log('loginRes', loginRes); //调用接口传递参数 let parames = { code: loginRes.code, encryptedData: infoRes.encryptedData, iv: infoRes.iv, signature: infoRes.signature, rawData: infoRes.rawData }; }, fail: function(err) { uni.showToast({ icon: 'none', title: '授权失败,请重新授权' }) } }); }, fail: function(err) { uni.showToast({ icon: 'none', title: '授权失败,请重新授权' }) } });

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容