function request(path, options) { var app=getApp(),token=app.globalData.token||xhs.getStorageSync('rice_pk_token');options=options||{}; return new Promise(function(resolve,reject){xhs.request({url:app.globalData.apiBase+path,method:options.method||'GET',data:options.data,header:token?{'content-type':'application/json',Authorization:'Bearer '+token}:{'content-type':'application/json'},success:function(res){if(res.statusCode>=200&&res.statusCode<300)return resolve(res.data);reject(new Error((res.data&&res.data.detail)||'请求失败('+res.statusCode+')'));},fail:reject});}); } function ensureLogin(){var app=getApp();if(app.globalData.token||xhs.getStorageSync('rice_pk_token'))return Promise.resolve();return new Promise(function(resolve,reject){xhs.login({success:function(result){request('/api/v1/auth/xhs',{method:'POST',data:{app_key:'rice',code:result.code}}).then(function(data){app.globalData.token=data.token;xhs.setStorageSync('rice_pk_token',data.token);resolve(data);}).catch(reject);},fail:reject});});} module.exports={request:request,ensureLogin:ensureLogin};