12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- import { objToUrl } from '@/utils/index';
- function request(options) {
- return new Promise((resolve, reject) => {
- let _obj = {
- url: '',
- data: {},
- method: 'GET',
- header: {
- 'Content-Type': 'application/json;charset=UTF-8'
- }
- };
- const baseUrl = getApp().globalData.baseUrl
- Object.assign(_obj, options);
- _obj.header['X-AUTH-TOKEN'] = uni.getStorageSync('token');
- _obj.header['X-HEADER-APPID'] = 'WuyoKG1AcDZzLwxfhOAC+E16SeG3+mDqVYmsa/e5HRE=';
- _obj.url = baseUrl + _obj.url;
- _obj.method = _obj.method.toUpperCase();
- _obj.success = function(res) {
- if (_obj.url.indexOf('checkLogin') > -1) {
- resolve(res);
- } else if (res.data.status === '900010') {
- setTimeout(function() {
- wx.showToast({
- title: '登录已过期,请重新登录',
- icon: 'none',
- duration: 1000
- });
- }, 10);
- setTimeout(function() {
- const currentRoute = getRoutePath();
- mpvue.removeStorage({
- key: 'token'
- });
- const url = `/pages/login/login?lanuch=${currentRoute.lanuch}&path=` + encodeURIComponent(currentRoute.url);
- mpvue.reLaunch({ url });
- }, 1000);
- } else {
- resolve(res);
- }
- };
- _obj.fail = function(err) {
- reject(err);
- };
- _obj.complete = function() {};
- uni.request(_obj);
- });
- }
- function getRoutePath() {
- // eslint-disable-next-line no-undef
- const pages = getCurrentPages(); // 获取加载的页面
- const currentPage = pages[pages.length - 1]; // 获取当前页面的对象
- let url = currentPage.route; // 当前页面url
- const options = objToUrl(currentPage.options); // 如果要获取url中所带的参数可以查看options
- const lanuch = [
- 'pages/personCenter/personCenter',
- 'pages/myPackage/myPackage',
- 'pagesMe/personData/personData',
- 'pages/packageDetail/packageDetail',
- 'pages/chooseCar/chooseCar'
- ].includes(url);
- url = '/' + url;
- if (options.length) {
- url += '?' + options;
- }
- return {
- url,
- lanuch
- };
- }
- export default request;
|