一:创建一个Http.js
import config from "./config";
export default class Http
{
request(url,data = [],method='GET')
{
//自定义主域名
var domain = 'http://www.tp6.com';
let header = {};
let token = wx.getStorageSync('token');
let openid = wx.getStorageSync('openid');
if(token)
{
header['token'] = token;
}
if(openid)
{
header['openid'] = openid;
}
let urlTo = `${domain}${url}`;
return new Promise(function(resolve,reject){
wx.request({
url: urlTo,
data,
method,
header,
success:res=>{
console.log(res);
if(res.statusCode !==200){
wx.showToast({
title: '请求异!',
icon:'error',
duration:2000
})
}
resolve(res.data)
},
fail:function(res){
wx.showToast({
title: '请求异常,请稍后再试',
icon:'error',
duration:2000
})
}
})
})
}
wxlogin()
{
let that = this;
return new Promise(function(resolve,reject){
//登录
wx.login({
success:res=>{
let url = `/api/wxlogin`;
let data = {'code':res.code};
that.request(url,data).then(function(res){
resolve(res)
});
}
})
})
}
}
二:app.js获取OpenId自动请求后台处理
// app.js
import Http from './utils/http';
let http = new Http()
App({
onLaunch() {
let isOpenid = wx.getStorageSync('openid')?true:false;
if(!isOpenid){
http.wxlogin().then(function(res){
if(res.openid){
wx.setStorageSync('openid', res.openid);
}
});
}
},
globalData: {
userInfo: null
}
})