UNPKG

vue-element3-search-table

Version:

```bash npm i vue-element3-search-table@latest --save ```

73 lines (67 loc) 1.68 kB
import axios from 'axios' const baseURL = import.meta.env.VITE_BASE_API const http = axios.create({ baseURL, timeout: 5000 // request timeout }) // 发起请求之前的拦截器 http.interceptors.request.use( config => { // 如果有token 就携带tokon const token = window.localStorage.getItem('access-token') if (token) { config.headers.common['access-token'] = token } return config }, error => Promise.reject(error) ) // 响应拦截器 http.interceptors.response.use( response => { const res = response.data if (response.status !== 200) { return Promise.reject(new Error(res.message || 'Error')) } else { return res } }, error => { return Promise.reject(error) } ) /** * get方法,对应get请求 * @param {String} url [请求的url地址] * @param {Object} params [请求时携带的参数] */ export function get(url, params){ return new Promise((resolve, reject) =>{ http.get(url, { params: params }).then(res => { resolve(res.data); }).catch(err =>{ reject(err.data) }) }); } /** * post方法,对应post请求 * @param {String} url [请求的url地址] * @param {Object} params [请求时携带的参数] */ export function post(url, params) { return new Promise((resolve, reject) => { axios.post(url, QS.stringify(params)) .then(res => { resolve(res.data); }) .catch(err =>{ reject(err.data) }) }); } axios.get = get axios.post = post export default axios