return new Promise(resolve => { wepy.showModal({ title: '提示', content: msg, showCancel: false, success: function (res) { if (res.confirm) { resolve() } } }) })
return new Promise((resolve, reject) => { wepy.showModal({ title: title, content: content, showCancel: true, success: function (res) { if (res.confirm) { resolve() } else if (res.cancel) { reject() } } }) })
export default async function request(options) { if (options.header) { options.header['x-wechat-session'] = '2d4ee676e40f6b35caed9dfa61fad807' } else { options.header = { 'x-wechat-session': '2d4ee676e40f6b35caed9dfa61fad807' } } let response = await wepy.request(options) // 如果返回401错误 说明未登录 需要执行登录 if (response.statusCode === 401) { // 执行登录 await interfaces.login() // 重新请求 return await request(options) } else if (response.statusCode === 500) { wepy.showModal({ title: '提示', content: `服务器错误,请截图本提示,并联系深大汪峰。${response.data.errmsg}` }) } else { return response } }
async login() { let userinfoRaw = {} let userinfo = {} try { userinfoRaw = await interfaces.getUserInfo() userinfo = await wepy.request({ url: api.user.login.url, method: api.user.login.method, header: { 'x-wechat-code': userinfoRaw.code, 'x-wechat-encrypted': userinfoRaw.encryptedData, 'x-wechat-iv': userinfoRaw.iv }, dataType: 'json', data: {} }) await wepy.setStorage({ key: '_session', data: userinfo.data.data.session }) } catch (e) { wepy.showModal({ title: '提示', content: `获取用户信息失败,请关闭重新进入。${e.message}` }) } } } export default interfaces