Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 213 | Rev 215 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 www 1
import Axios from "axios";
2
 
3
let axios = Axios.create({
4
  baseURL: '',
5
});
6
axios.get = (_url, params={}) => {
7
    let url = _url
8
    if(!_url.includes('t=')){
9
        if(_url.includes('?'))
10
            url += '&'
11
        else
12
            url += '?'
13
        url+= 't='+new Date().getTime()
14
    }
15
    return Axios.get(url,{
16
        headers: {
17
            'Accept': 'application/json',
18
            'Vary': 'Accept',
19
            'Cache-Control': 'no-cache, no-store'
20
        },
21
        params
22
    });
23
}
24
axios.all = Axios.all;
25
axios.spread = Axios.spread;
26
axios.upload = (url,data) => {
27
  return axios.post(url,createFormData(data),{
28
    headers: {
29
              'Content-Type': 'multipart/form-data'
30
        }
31
  });
32
}
33
axios.interceptors.request.use(
208 steven 34
  async (config) => {
211 steven 35
    if (['post', 'put', 'delete'].includes(config.method)) {
36
      const csrf = await axios.get('/csrf');
213 steven 37
      if(csrf.data.success){
214 steven 38
        config.headers['X-CSRF-TOKEN'] = csrf.data.data
213 steven 39
      }
211 steven 40
      console.log('>>: csrf > ', csrf);
41
    }
1 www 42
    return config;
43
  },
44
  (error) => {
45
    return Promise.reject(error);
46
  }
47
);
48
 
49
export default axios