dev-audioprocessing/plugins/axios.ts

36 lines
964 B
TypeScript

import axios, {AxiosInstance, AxiosRequestConfig} from "axios";
import {useUserStore} from '@/stores/user';
import {mapState} from 'pinia';
export default defineNuxtPlugin((nuxtApp) => {
const defaultUrl = "https://admin.mindboost.craveteck.pk";
// const defaultUrl = "http://localhost:8000";
// Access Pinia state
// @ts-ignore
let api: AxiosInstance;
api = axios.create({
// @ts-ignore
baseURL: defaultUrl,
headers: {
common: {},
},
});
// @ts-ignore
api.interceptors.request.use((config: AxiosRequestConfig) => {
console.log(config);
console.log('On request');
// @ts-ignore
config.baseURL=defaultUrl;
var token=mapState(useUserStore,['token']).token();
// @ts-ignore
config.headers.Authorization='Bearer '+token;
return config;
});
return {
provide: {
axios: api,
},
};
});