Laravel поставляется с vuejs из коробки. Он также включает vue-ресурс для выполнения HTTP-запросов в ваших компонентах vue.

Недавно автор vuejs Эван Ю объявил, что vue-ресурс удаляется из организации vue на GitHub. Причины этого шага связаны с тем, что проект больше не поддерживается активно, и есть альтернативы получше.

Axios - это библиотека, которую Эван рекомендовал в качестве альтернативы. Я попробовал и первым делом добавил перехватчик для присоединения токена csrf. Вот как я это сделал:

  1. Сначала нам нужно установить пакет
$ yarn add axios # You can also do: npm install axios

2. Удалите vue-ресурс.

$ yarn remove vue-resource

3. Удалите оператор импорта и шаблон для перехватчика vue-resource в resources/js/app.js

4. Добавьте перехватчик axios в resources/js/bootstrap.js

5. Я также добавил следующее, чтобы получить доступ к аксиомам с помощью this.$http

Vue.prototype.$http = axios;

Я обнаружил, что это ближе к реализации vue-resource и делает миграцию очень простой.

Теперь где угодно в моих компонентах vue я могу назвать аксиомы следующим образом:

this.$http.get('api/user')
          .then(result => {//do something});

Спасибо за прочтение.

Обновлено: исправлен код в последнем примере.