@danilr

Получение данных по публичному API через Axios во Vue?

Делаю запрос к публичному сервису через Axios, но приходит пустой объект, подскажите где ошибка?
Файл с объектом axios:
import axios from 'axios'

export const HTTP = axios.create({
    baseURL: 'https://frontend-test-case.azurewebsites.net',
    timeout: 10000
})

export const Routes = {
    getList: '/api/report/card',
}

мутация во vuex:
mutations: {
    list(state) {
        HTTP.post(Routes.getList, {
          params: {
              period: 2,
              date: "2019-03-04T15:47:59.784Z"
            }
          })
          .then(data => {
            state.list = data;
            setTimeout(() => {
              console.log(state.list)
            }, 400);
          })
          .catch(error => {
            console.log(error);
          });
      }

Вот ссылка на публичный API:
https://frontend-test-case.azurewebsites.net/swagg...
  • Вопрос задан
  • 236 просмотров
Решения вопроса 1
yarkov
@yarkov Куратор тега JavaScript
Помог ответ? Отметь решением.
Может не params, а data? Вы же POST оправляете.
Или так вообще (не помню как в axios верно:
{
     "period": 0,
     "date": "2019-03-05T15:12:13.319Z"
 }
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Kozack
@Kozack Куратор тега JavaScript
Thinking about a11y
В мутациях нельзя применять асинхронные запросы. Мутации — исключительно синхронны. Для асинхронных аперацию используйте Actions — который получает данные и уже потом вызывает мутацию с подготовленным объектом для сохранения
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы