Vue API Calls и Laravel Middleware - PullRequest
       16

Vue API Calls и Laravel Middleware

0 голосов
/ 11 декабря 2018

Можно ли глобально настроить прослушиватель на вызовы API, сделанные с помощью Axios в Vue?На каждой конечной точке Laravel установлено промежуточное программное обеспечение, которое либо выдаст запрошенные данные, либо вернет сообщение о том, что им нужно проверить свои сообщения.Моя цель - захватить это сообщение и перенаправить пользователя на страницу, чтобы просмотреть его сообщение.Я не могу придумать способ сделать это, кроме установки чего-то для каждой функции, которая проверяет сообщение и отвечает соответственно.Есть сотни функций, и это не будет чистым решением.

Любые и все рекомендации приветствуются!

1 Ответ

0 голосов
/ 12 декабря 2018

Используя Axios Interceptors , вы можете сделать что-то вроде этого:

this.$http.interceptors.response.use(response => () {
    // Redirect to a new page when you send
    // custom header from the server
    if (response.headers.hasOwnProperty('my-custom-header')) {
        window.location.href = '/another-page';
    }

    // Or when you get a specific response status code
    if (response.status === 402) {
        window.location.href = '/another-page';
    }

    // Or when the response contains some specific data
    if (response.data.someKey === 'redirect') {
        window.location.href = '/another-page';
    }

    // ...or whatever you want
});
...