wallet-svr/src/net/NetClient.ts
2022-12-08 16:43:58 +08:00

33 lines
801 B
TypeScript

import axios, { AxiosRequestConfig } from 'axios'
export interface IReqData {
url: string
method?: string
data?: any
}
export class NetClient {
httpGet(reqData: IReqData | string): Promise<any> {
let opt: AxiosRequestConfig = { method: 'get' }
if (typeof reqData == 'string') {
opt.url = reqData
} else {
Object.assign(opt, reqData)
}
return this.request(opt)
}
httpPost(data: IReqData): Promise<any> {
let reqData: AxiosRequestConfig = {
method: 'post',
}
Object.assign(reqData, data)
return this.request(reqData)
}
request(data: AxiosRequestConfig): Promise<any> {
let defaultCfg: AxiosRequestConfig = {
method: 'get',
}
Object.assign(defaultCfg, data)
return axios(defaultCfg).then(res => res.data)
}
}