|
|
import config from '../../config.js';
|
|
|
import request from '../request.js';
|
|
|
import common from '../common.js';
|
|
|
|
|
|
let mpWeixin = {}
|
|
|
|
|
|
/*
|
|
|
* 小程序获取OPENID
|
|
|
* 2020-11-18
|
|
|
*/
|
|
|
mpWeixin.getOpenid = function() {
|
|
|
let openid = uni.getStorageSync('openid')
|
|
|
let user_id = uni.getStorageSync('user_id')
|
|
|
|
|
|
return new Promise((resolve, reject) => {
|
|
|
if (!openid) {
|
|
|
mpWeixin.login().then(res => {
|
|
|
resolve(res)
|
|
|
}).catch(res => {
|
|
|
reject()
|
|
|
})
|
|
|
} else {
|
|
|
// 检查登录态 wx.checkSession session_key如果失效,需要重新执行登录流程
|
|
|
uni.checkSession({
|
|
|
success(res) {
|
|
|
// console.log('checkSessionSuccess')
|
|
|
resolve({
|
|
|
openid: uni.getStorageSync('openid'),
|
|
|
user_id: uni.getStorageSync('user_id'),
|
|
|
})
|
|
|
console.log('生产环境 缓存:openid = ' + uni.getStorageSync('openid') +
|
|
|
' user_id = ' + uni
|
|
|
.getStorageSync('user_id'))
|
|
|
},
|
|
|
fail(err) {
|
|
|
// console.log('checkSessionFail')
|
|
|
mpWeixin.login().then(res => {
|
|
|
resolve(res)
|
|
|
}).catch(res => {
|
|
|
reject()
|
|
|
})
|
|
|
}
|
|
|
})
|
|
|
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
|
|
|
mpWeixin.login = function() {
|
|
|
return new Promise((resolve, reject) => {
|
|
|
uni.getProvider({
|
|
|
service: 'oauth',
|
|
|
success: function(res) {
|
|
|
if (~res.provider.indexOf('weixin')) {
|
|
|
uni.login({
|
|
|
provider: 'weixin',
|
|
|
success: function(loginRes) {
|
|
|
request.getData(
|
|
|
'base/mpweixin/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)
|
|
|
|
|
|
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()
|
|
|
})
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
}
|
|
|
})
|
|
|
})
|
|
|
}
|
|
|
|
|
|
export default mpWeixin
|