Надеюсь, что это поможет кому-то!
даю некоторую информационную панель vuejs с vuex и axios, между другими, и некоторое время я боролся с довольно неприятной проблемой: кажется, я не могу сделать более одного запроса! Все последующие вызовы терпят неудачу с этой ошибкой:
Ошибка выборки ... SyntaxError: Не удалось выполнить setRequestHeader для XMLHttpRequest: Bearer {the_entire_content_of_the_previous_api_response} 'не является допустимым значением поля заголовка HTTP.
Мой магазин выглядит так:
import axios from "axios";
const state = {
rawData1: null,
rawData2: null
};
const actions = {
FETCH_DATA1: ({ commit }) =>
{
if (!state.rawData1)
return axios.get("/api/data1")
.then((response) =>
{
commit("SET_RAW_DATA1", response.data);
});
},
FETCH_DATA2: ({ commit }) =>
{
if (!state.rawData2)
return axios.get("/api/data2")
.then((response) =>
{
commit("SET_RAW_DATA2", response.data);
});
}
};
const mutations = {
SET_RAW_DATA1: (state, data) =>
{
state.rawData1 = data;
},
SET_RAW_DATA2: (state, data) =>
{
state.rawData2 = data;
}
};
export default
{
namespaced: true,
state,
actions,
mutations
};
Я не думаю, что у моего API есть какие-либо проблемы, так как кажется, что все работает гладко через Postman.
Может быть, для некоторых это очевидно, но я не могу понять, в чем дело, потому что я все еще довольно нюб ...
О, и я обращаюсь с Axios Promise, как это, если это представляет какой-либо интерес:
this.$store.dispatch("api/FETCH_DATA1").then(() =>
{
// parsing this.$store.state.api.rawData1 with babyparse
}).catch((err) =>
{
this.errorMsg = "Fetching error... " + err;
});
После ответа @wajisan кажется, что он работает с «традиционными» вызовами, но не с извлечением файловых вызовов. Я пробовал вещи с моим Echo API, но безрезультатно ... Более подробно там:Обслуживание файлов с помощью Echo (Golang).
Есть идеи, пожалуйста? :)