uniapp的授权小程序登录

1:第一步获取code:

// 获取code
	getCode() {
		return new Promise((resolve, reject) => {
			uni.login({
				provider: 'weixin',
				success: res => {
					console.log('code', res.code)
					resolve(res.code)
				},
				fail: reject
			})
		})
	},
// 获取微信用户信息(新版)
	getUserProfile() {
		const app = this
		wx.canIUse('getUserProfile') && wx.getUserProfile({
			lang: 'zh_CN',
			desc: '获取用户相关信息',
			success(res) {
				console.log('用户同意了授权');
				uni.setStorageSync('userInfo',res.userInfo);
				// 	// 授权成功事件
				app.onAuthSuccess(res.userInfo, res.encryptedData, res.iv)
			},
			fail() {
				console.log('用户拒绝了授权')
			}
		})
	},
onAuthSuccess(userInfo, encryptedData, iv){
	// 接口
	api.LoginMpWx({
		code: await app.getCode(),
		avatarUrl: userInfo.avatarUrl,
		nickname: userInfo.nickName,
		encryptedData: encryptedData,
		iv: iv,
	})
	.then(result => {
		app.$toast('登陆成功')
		uni.navigateBack()
	})
	.finally(() => app.disabled = false)
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值