version : 1.0.0-alpha.4
import axios from 'axios';
export default ({ store, app: { router }, req }) => {
// I just want to send an HTTP request to bring Token
axios.interceptors.request.use(function (config) {
console.log("store Token : ",store.state.token);
config.headers.token = store.state.token || "";
return config
});
};
async nuxtServerInit({ commit, dispatch, rootState }, { req }) {
if (req.headers.cookie) {
let cookies = req.headers.cookie.split(";"), arr;
for (var i = 0, len = cookies.length; i < len; i++) {
arr = cookies[i].split("=");
if (_.trim(arr[0]) == "token") {
// here is the only place to set Token
await commit("SET_TOKEN", arr[1]);
await dispatch("getUserInfo");
}
}
}
},
async getUserInfo({ commit }) {
let { ok, data: { userInfo, authToken } } = await axios("/api/auth/info", {}, "GET");
...
...
},
SET_TOKEN(state, token) {
state.token = _.trim(token);
},
first log :
second log :