103 lines
2.2 KiB
JavaScript
103 lines
2.2 KiB
JavaScript
/**
|
||
* 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
|
||
}
|