Axios Part 2



1.       Create a new axios-main.js:

 

import axios from 'axios';

 

const intance = axios.create({

                baseURL: 'https://react-my-burger-8eda4.firebaseio.com/'

});

 

export default instance

 

2.       In another file you can import the axios instance:

 

import axios from '../../axios-main';

 

axios.get('/orders.json')

                                                                .then(res => {

                                                                                …

                                                                                …

                                                                })

                                                                .catch(err => {

                                                                                …

                                                                });

1.            Create a new axios-main.js:

 

import axios from 'axios';

 

const intance = axios.create({

                baseURL: 'https://react-my-burger-8eda4.firebaseio.com/'

});

 

intance.defaults.baseURL = 'https://jsonplaceholder.typicode.com';

intance.defaults.headers.common['Authorization'] = 'AUTH TOKEN';

intance.defaults.headers.post['Content-Type'] = 'application/json';

 

intance.interceptors.request.use(request => {

    console.log(request);

    // Edit request config

    return request;

}, error => {

    console.log(error);

    return Promise.reject(error);

});

 

intance.interceptors.response.use(response => {

    console.log(response);

    // Edit request config

    return response;

}, error => {

    console.log(error);

    return Promise.reject(error);

});

 

export default instance

 

2.            In another file you can import the axios instance:

 

import axiosInstance from '../../axios-main';

 

axiosInstance.get('/orders.json')

                                                                .then(res => {

                                                                                …

                                                                                …

                                                                })

                                                                .catch(err => {

                                                                                …

                                                                });

 

If you may need to remove an interceptor later you can.

const myInterceptor =axios.interceptors.request.use(function () {/*...*/});

axios.interceptors.request.eject(myInterceptor);

 

You can add interceptors to a custom instance of axios.

const instance = axios.create();

instance.interceptors.request.use(function () {/*...*/});

Comments

Popular posts from this blog

Set Up Babel and Webpack

Typescript Setup

Typescript + React Setup