You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
119 lines
3.7 KiB
119 lines
3.7 KiB
import config from '../../config.js';
|
|
import request from '../request.js';
|
|
import common from '../common.js';
|
|
|
|
|
|
let mpQq = new Object()
|
|
|
|
/*
|
|
* 小程序获取OPENID
|
|
* 2021-07-01
|
|
*/
|
|
mpQq.getOpenid = function() {
|
|
let openid = uni.getStorageSync('openid')
|
|
let user_id = uni.getStorageSync('user_id')
|
|
|
|
return new Promise((resolve, reject) => {
|
|
if (config.isTest) {
|
|
if (!openid) {
|
|
request.getData('base/mpqq/api/Auth/getUserByOpenid', {
|
|
openid: config.testOpenid
|
|
}, {
|
|
loading: 1
|
|
}).then(res => {
|
|
uni.setStorageSync('openid', res.data.openid)
|
|
uni.setStorageSync('user_id', res.data.user_id)
|
|
uni.setStorageSync('access_token', res.data.access_token)
|
|
uni.setStorageSync('access_token_expire_time', res.data
|
|
.access_token_expire_time)
|
|
|
|
console.log('测试环境刚获得 缓存:openid = ' + uni.getStorageSync('openid') + ' user_id = ' + uni.getStorageSync('user_id'))
|
|
resolve()
|
|
}, err => {
|
|
console.log(err)
|
|
reject()
|
|
})
|
|
} else {
|
|
resolve()
|
|
console.log('测试环境 缓存:openid = ' + uni.getStorageSync('openid') + ' user_id = ' + uni.getStorageSync('user_id'))
|
|
}
|
|
} else {
|
|
if (!openid) {
|
|
uni.getProvider({
|
|
service: 'oauth',
|
|
success: function(res) {
|
|
if (~res.provider.indexOf('qq')) {
|
|
uni.login({
|
|
provider: 'qq',
|
|
success: function(loginRes) {
|
|
request.getData('base/mpqq/api/Auth/getOpenid', {
|
|
code: loginRes.code
|
|
}, {
|
|
loading: 1
|
|
}).then(res => {
|
|
uni.setStorageSync('openid', res.data.openid)
|
|
uni.setStorageSync('user_id', res.data.user_id)
|
|
uni.setStorageSync('access_token', res.data.access_token)
|
|
uni.setStorageSync('access_token_expire_time', res.data.access_token_expire_time)
|
|
|
|
uni.getSetting({
|
|
success: (res) => {
|
|
if (res.authSetting['scope.userInfo']) { //已经开启授权
|
|
uni.checkSession({
|
|
success: (res) => {
|
|
// 登录态未过期,可以直接调用 getUserInfo 获取头像昵称
|
|
uni.getUserInfo({
|
|
provider: 'qq',
|
|
success: (res) => {
|
|
request.getData(
|
|
'base/mpqq/api/Auth/userInfoUpdate', {
|
|
openid: openid,
|
|
nickname: res.userInfo.nickName,
|
|
headimgurl: res.userInfo.avatarUrl,
|
|
country: res.userInfo.country,
|
|
province: res.userInfo.province,
|
|
city: res.userInfo.city,
|
|
gender: res.userInfo.gender,
|
|
language: res.userInfo.language,
|
|
iv: res.iv,
|
|
encryptedData: res.encryptedData,
|
|
rawData: res.rawData,
|
|
signature: res.signature,
|
|
}, (res) => {
|
|
this.$emit('login')
|
|
});
|
|
}
|
|
});
|
|
}
|
|
});
|
|
}
|
|
}
|
|
});
|
|
resolve({
|
|
openid: uni.getStorageSync('openid'),
|
|
user_id: uni.getStorageSync('user_id'),
|
|
})
|
|
console.log('生产环境刚获得 缓存:openid = ' + uni.getStorageSync('openid') + ' user_id = ' + uni.getStorageSync('user_id'))
|
|
}, err => {
|
|
console.log(err)
|
|
reject()
|
|
})
|
|
}
|
|
})
|
|
}
|
|
}
|
|
})
|
|
} else {
|
|
resolve({
|
|
openid: uni.getStorageSync('openid'),
|
|
user_id: uni.getStorageSync('user_id'),
|
|
})
|
|
console.log('生产环境 缓存:openid = ' + uni.getStorageSync('openid') + ' user_id = ' + uni.getStorageSync('user_id'))
|
|
}
|
|
}
|
|
});
|
|
}
|
|
|
|
|
|
export default mpQq
|