You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

54 lines
1.4 KiB

import * as qs from "qs"
import axios from "axios"
import { ElLoading } from 'element-plus'
let loading = null;
const service = axios.create({
baseURL:"http://112.124.40.88:8002",
// baseURL:"",
timeout: 500000
})
service.interceptors.request.use(config => {
loading = ElLoading.service({
customClass: 'loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0)'
})
return config;
}, error => {
Promise.reject(error)
})
service.interceptors.response.use(response => {
loading.close()
return response.data;
}, error => {
loading.close()
return Promise.reject(error)
}
)
export function post(url: any, params = {}, contentType = "application/x-www-form-urlencoded") {
return new Promise((resolve, reject) => {
if ('application/x-www-form-urlencoded' === contentType){
params = qs.stringify(params);
}
service({ url, method: 'post', data: params, headers: { 'Content-Type': contentType }}).then(response => {
resolve(response);
}).catch(error => {
reject(error);
})
})
}
export function get(url, params = {}, baseUrl = '') {
return new Promise((resolve, reject) => {
service({ url, baseURL: baseUrl, method: 'get', params: params }).then(response => {
resolve(response);
}).catch(error => {
reject(error);
})
})
}