8 lines
1.1 KiB
JavaScript
8 lines
1.1 KiB
JavaScript
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};
|
||
|