// +---------------------------------------------------------------------- // | CRMEB [ CRMEB赋能开发者,助力企业发展 ] // +---------------------------------------------------------------------- // | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved. // +---------------------------------------------------------------------- // | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权 // +---------------------------------------------------------------------- // | Author: CRMEB Team // +---------------------------------------------------------------------- import { HTTP_REQUEST_URL, HEADER, TOKENNAME } from '@/config/app'; import store from '../store'; /** * 发送请求 */ function baseRequest(url, method, data, { noAuth = false, noVerify = false }) { let Url = HTTP_REQUEST_URL, header = HEADER; if (store.state.app.token) header[TOKENNAME] = 'Bearer ' + store.state.app.token; return new Promise((reslove, reject) => { uni.request({ url: Url + '/api/' + url, method: method || 'GET', header: header, data: data || {}, success: (res) => { // #ifdef APP-PLUS // console.log('app', Url + '/api/' + url, method); // #endif if (noVerify) reslove(res.data, res); else if (res.data.status == 200) reslove(res.data, res); else if ([410000, 410001, 410002, 40000].indexOf(res.data.status) !== -1) { reject(res.data); } else if (res.data.code==0||res.data.code==1) { reslove(res.data, res); }else if (res.data.status == 501) { reject(res.data); } else reject(res.data.message || '系统错误'); }, fail: (message) => { console.log(url, method, data) reject('请求失败',message); } }) }); } const request = {}; ['options', 'get', 'post', 'put', 'head', 'delete', 'trace', 'connect'].forEach((method) => { request[method] = (api, data, opt) => baseRequest(api, method, data, opt || {}) }); export default request;