authLogin() {
////弹窗授权
//showModal用于触发uni.getUserProfile弹窗
uni.showModal({
title: '授权登录',
content: '是否授权登录微信小程序?',
success: () => {
uni.getUserProfile({
desc: '登录后可同步数据',
lang: 'zh_CN',
success: (infoRes) => {
console.log('用户信息-----------', infoRes)
//获取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: '',data: {parames: parames,}}).then((res) => {
//获取到 openid 和 session_k后,自己的逻辑
if(res.code==1){
console.log('授权登录成功', res.data);
console.log(res.data.openid);
console.log(res.data.session_key);
}
});
},
fail: function(err) {
uni.showToast({
icon: 'none',
title: '授权失败'
})
}
});
},
fail: function(err) {
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: '授权失败,请重新授权'
})
}
});
}
uniapp微信小程序授权登录
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 微信小程序官网代码 uni-app代码 将bindgetuserinfo改成@getuserinfo="GetUs...
- 一:微信小程序中的登录 主要思路: (1)用button组件的open-type="getUserInfo"属性获...
- uniapp 微信小程序授权登录getUserInfo获取不到用户的昵称和头像 1、之前的授权用户头像个昵称方法:...
- 需求: 之前的小程序获取用户授权通常使用getUserInfo,在4月份更新中已经弃用了该方法,并通过getUse...