// app.js import request from './utils/request.js' App({ onLaunch() { // 展示本地存储能力 const logs = wx.getStorageSync('logs') || [] logs.unshift(Date.now()) wx.setStorageSync('logs', logs) wx.login({ success: res => { // 发送 res.code 到后台换取 openId, sessionKey, unionId request({ url: '/wx/user/' + this.globalData.appID + '/login', method: 'get', data: { code: res.code } }).then(res => { console.log(res) this.globalData.login = true // 设置登录时间 this.globalData.loginTime = Date.now() // 设置登录信息 const userInfo = this.globalData.userInfo userInfo.openid = res.openid userInfo.postmark = res.postmark userInfo.token = res.token }).then(res => { }).catch(err => { console.log(err) }) } }) // 获取用户信息 wx.getSetting({ success: res => { if (res.authSetting['scope.userInfo']) { // 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框 wx.getUserInfo({ success: res => { // 可以将 res 发送给后台解码出 unionId this.globalData.userInfo = res.userInfo // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回 // 所以此处加入 callback 以防止这种情况 if (this.userInfoReadyCallback) { this.userInfoReadyCallback(res) } } }) } } }) }, globalData: { userInfo: {}, loginTime: null, login: false, appID: 'wxb915ee2a665fcb6c', baseURL: 'http://localhost:8088' } })