uni app和php开发微信登录代码,uni-app微信小程序登录授权的实现

微信小程序授权是非常简单和常用的功能,但为了方便,还是在此记录一下要点:

13afc063e29088c0a901e12aea12adde.png

首先是需要用到一个授权按钮来触发获取用户信息授权: 关键在于 open-type 为 getUserInfo , 然后有个@getuserinfo的事件,把获取授权接口写到该事件里面去

{{loginInfo.openid != "" && loginInfo.openid != undefined ? "已授权" : "小程序授权"}}

方法如下:

appLoginWx(){

// #ifdef MP-WEIXIN

uni.getProvider({

service: 'oauth',

success: function (res) {

if (~res.provider.indexOf('weixin')) {

uni.login({

provider: 'weixin',

success: (res) => {

_self.authorization = res.code;

uni.getUserInfo({

provider: 'weixin',

success: (info) => {//这里请求接口

console.log(res);

console.log(info);

},

fail: () => {

uni.showToast({title:"微信登录授权失败",icon:"none"});

}

})

},

fail: () => {

uni.showToast({title:"微信登录授权失败",icon:"none"});

}

})

}else{

uni.showToast({

title: '请先安装微信或升级版本',

icon:"none"

});

}

}

});

//#endif

}

在 uni.login 和 uni.getUserInfo 被调用后,你可以获取到以下值用于继续请求后端给你的接口:

常用的值大概有:code 、iv 、encryptedData 和 个人基本信息,这些可以传给后端交换得到openid。

28c6fb2017de95721d71a4af806eea76.png

如果需要知道用户当前是否已经授权,则可以使用如下代码:

// #ifdef MP-WEIXIN

uni.getSetting({

success(res) {

console.log("授权:",res);

if (!res.authSetting['scope.userInfo']) {

//这里调用授权

console.log("当前未授权");

} else {

//用户已经授权过了

console.log("当前已授权");

}

}

})

//#endif

到此这篇关于uni-app微信小程序登录授权的实现的文章就介绍到这了,更多相关uni-app小程序登录授权内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值