提交 a2587994 编写于 作者: Q qiang

fix: 修复app端微信登录报错

上级 5cedf24a
......@@ -18,14 +18,14 @@ const loginByService = (provider, callbackId) => {
code: err.code,
errMsg: 'login:fail:' + err.message
})
}, { scope: 'email' })
}, provider === 'apple' ? { scope: 'email' } : {})
}
// 先注销再登录
// apple登录logout之后无法重新触发获取email,fullname
if (provider === 'apple') {
login()
} else {
loginServices[provider].logout(login, login)
// apple登录logout之后无法重新触发获取email,fullname
if (provider === 'apple') {
login()
} else {
loginServices[provider].logout(login, login)
}
}
/**
......@@ -65,7 +65,7 @@ export function getUserInfo (params, callbackId) {
errMsg: 'operateWXData:fail:请先调用 uni.login'
})
}
loginService.getUserInfo(res => {
loginService.getUserInfo(res => {
let userInfo
if (provider === 'weixin') {
const wechatUserInfo = loginService.userInfo
......@@ -79,38 +79,38 @@ export function getUserInfo (params, callbackId) {
avatarUrl: wechatUserInfo.headimgurl,
unionId: wechatUserInfo.unionid
}
} else if (provider === 'apple') {
const appleInfo = loginService.appleInfo
userInfo = {
openId: appleInfo.user,
fullName: appleInfo.fullName,
email: appleInfo.email,
authorizationCode: appleInfo.authorizationCode,
identityToken: appleInfo.identityToken,
realUserStatus: appleInfo.realUserStatus
}
} else if (provider === 'apple') {
const appleInfo = loginService.appleInfo
userInfo = {
openId: appleInfo.user,
fullName: appleInfo.fullName,
email: appleInfo.email,
authorizationCode: appleInfo.authorizationCode,
identityToken: appleInfo.identityToken,
realUserStatus: appleInfo.realUserStatus
}
} else {
loginService.userInfo.openId = loginService.userInfo.openId || loginService.userInfo.openid ||
loginService.authResult.openid
loginService.userInfo.nickName = loginService.userInfo.nickName || loginService.userInfo.nickname
loginService.userInfo.avatarUrl = loginService.userInfo.avatarUrl || loginService.userInfo.avatarUrl ||
loginService.userInfo.headimgurl
loginService.userInfo.headimgurl
userInfo = loginService.userInfo
}
const result = {
errMsg: 'operateWXData:ok'
}
if (params.data && params.data.api_name === 'webapi_getuserinfo') {
}
const result = {
errMsg: 'operateWXData:ok'
}
if (params.data && params.data.api_name === 'webapi_getuserinfo') {
result.data = {
data: JSON.stringify(userInfo),
rawData: '',
signature: '',
encryptedData: '',
iv: ''
}
} else {
result.userInfo = userInfo
}
}
} else {
result.userInfo = userInfo
}
invoke(callbackId, result)
}, err => {
invoke(callbackId, {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册