Как получить заголовки ответа на запрос 303 с помощью Axios реагией - PullRequest
0 голосов
/ 11 сентября 2018

Я использую приведенный ниже код

    const configureAjaxClient = () => {
        let csrf_token = '';
        const instance = axios.create({
            baseURL: '/abc',
            timeout: 300000,
            paramsSerializer: (params) => {
                return qs.stringify(params, { arrayFormat: 'brackets' });
            },
        });

        instance.interceptors.request.use((config) => {
            config.headers['X-CSRF-Token'] = csrf_token;
            if (config.data) {
                config.data = qs.stringify(config.data);
            }
            return config;
        });

        instance.interceptors.response.use((response) => {
            if (response.data) {
                return Promise.reject(response);
            }
            return response;
        }, (error) => {
            return Promise.reject(error);
        });

        return instance;
    };

    export default configureAjaxClient;

, когда мой запрос 303 перенаправляется в заголовок местоположения в ответе, и функция ошибки вызывается с ниже

    errorError:Network  Error
        at createError (createError.js:16)
        at XMLHttpRequest.handleError (xhr.js:87)   

И при ошибке Iполучить error.response как неопределенное.

Как я получу заголовки ответа, и я хочу перенаправить на другой маршрут.

Пожалуйста, помогите, я использую последние Axios и reactjs

Ответы [ 2 ]

0 голосов
/ 11 сентября 2018

Этот заголовок отсутствовал в запросе, который мой сервер проверяет, является ли его запрос Ajax или нет

// Headers
// This header is required to inform server that its an Ajax request
instance.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
0 голосов
/ 11 сентября 2018

Вы не можете.Axios - это оболочка для XMLHttpRequest, которая прозрачно обрабатывает ответы перенаправления и не имеет возможности изменить это.

Если вы переключитесь на выборку, вы можете использовать объект запроса , чтобы указать, что перенаправления не выполнялись автоматически.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...