/** * HTTP的封装, 基于uni.request * 包括: 通用响应结果的处理 和 业务的增删改查函数 * * @author terrfly * @site https://www.jeequan.com * @date 2021/12/16 18:35 */ // 导入全局属性 import appConfig from '@/config/appConfig.js' import {toErrPageFunc} from '@/util/toErrorPageUtil.js' import storageManage from '@/util/storageManage.js' function req(uri, data, method = "GET", extParams = {}){ // 放置token let headerObject = {} headerObject[appConfig.tokenKey] = appConfig.tokenValue headerObject.pageType = appConfig.currentPageType headerObject.iToken = storageManage.iToken() // 麒麟 // let iToken = 'Q8240202142732831'; //收银呗 // let iToken = 'Q8240510155041616'; // headerObject[appConfig.tokenKey] = iToken // headerObject.pageType = appConfig.currentPageType // headerObject.iToken = iToken return uni.request( Object.assign({ url: appConfig.env.JEEPAY_PAY_BASE_URL + uri, data: data, method: method, header: headerObject }, extParams)).then((httpData) => { // 从http响应数据中解构响应数据 [ 响应码、 bodyData ] let { statusCode, data } = httpData // 避免混淆重新命名 let bodyData = data // http响应码不正确 if(statusCode != 200){ return Promise.reject(bodyData) // 跳转到catch函数 } // 业务响应异常 if(bodyData.code != 0){ toErrPageFunc(bodyData.msg) return Promise.reject(bodyData.msg) } // 构造请求成功的响应数据 return Promise.resolve({ bizData: bodyData.data, data: data }) }).catch( res => { return Promise.reject(res) }); } // 通用list function list(uri, params){ return req(uri, params, 'GET') } // 通用add function add(uri, data){ return req(uri, data, 'POST') } // 通用 根据ID获取 function getById(uri, bizId){ return req(`${uri}/${bizId}`, {}, 'GET') } // 通用 更新 function updateById(uri, bizId, data){ return req(`${uri}/${bizId}`, data, 'PUT') } // 通用 删除 function delById(uri, bizId){ return req(`${uri}/${bizId}`, {}, 'DELETE') } export default { req : req, list: list, add: add, getById: getById, updateById: updateById, delById: delById }