react-native-wechat
来源:15-11 RN App社会化分享、第三方登录开发精讲-2【必备加分技能】
慕码人2389798
2019-08-15
在获取身份信息后,点击同意没有反应,返回到登录页面。设置的弹窗也有没有出来。这是什么原因啊?我想点击同意后,跳转到主页面。怎么操作???
// 微信登陆授权
weixinLogin = () => {
let scope = 'snsapi_userinfo'
let state = 'wechat_adk_mingjia'
WeChat.isWXAppInstalled()
.then((isInstalled) => {
if (isInstalled) {
//获取微信授权
WeChat.sendAuthRequest(scope, state)
.then(responseCode => {
//授权成功获取token
this.getAccessToken(responseCode);
}).catch(error => {
alert('授权错误:', error.message, [
{ text: '确定' }
])
})
} else {
alert('没有安装微信', '请先安装微信', [
{ text: '确定' }
])
}
})
}
// 微信登陆获取token
getAccessToken = (responseCode) => {
let appId = '***';
let secret = '***';
switch (parseInt(responseCode.errCode)) {
// 用户换取access_token的code,仅在ErrCode为0时有效
case 0:
//获取token值
getRequest('https://api.weixin.qq.com/sns/oauth2/access_token?appid=' + appId + '&secret=' + secret + '&code=' + responseCode.code + '&grant_type=authorization_code')
.then(res => {
//授权成功,获取用户头像等信息
ToastAndroid.show('用户信息' + JSON.stringify(res),ToastAndroid.SHORT)
this.getUserInfoFormWx(res);
this.props.navigation.navigate('Select')
})
.catch(err => {
alert(err)
})
break;
case -4:
//用户拒绝
break;
case -2:
//用户取消
break;
}
}
// 获取微信用户信息
getUserInfoFormWx = (res) => {
console.log(res)
getRequest('https://api.weixin.qq.com/sns/userinfo?access_token=' +
res.access_token + '&openid=' + res.openid).then(res => {
// ToastAndroid.show('用户信息' + JSON.stringify(res),ToastAndroid.SHORT)
}
).catch(err => { })
}
写回答
2回答
-
一个减肥的小胖子
2022-08-26
请问你这个问题后来解决了吗
00 -
CrazyCodeBoy
2019-08-16
在你调微信的回调方法中打个断点调试一下看有没有正常回调,如果没有通常是配置问题,可根据官方配置文档检查下配下是否OK,也可查看官库的issue。
022022-08-25
相似问题