advplyr.audiobookshelf-app/plugins/axios.js

32 lines
933 B
JavaScript
Raw Normal View History

2021-09-01 20:07:11 -05:00
export default function ({ $axios, store }) {
$axios.onRequest(config => {
console.log('[Axios] Making request to ' + config.url)
if (config.url.startsWith('http:') || config.url.startsWith('https:')) {
return
}
2022-07-01 16:33:39 -05:00
2022-12-08 17:54:56 -06:00
const customHeaders = store.getters['user/getCustomHeaders']
2022-07-01 16:33:39 -05:00
if (customHeaders) {
for (const key in customHeaders) {
config.headers.common[key] = customHeaders[key]
}
}
2022-12-08 17:54:56 -06:00
const bearerToken = store.getters['user/getToken']
2021-09-01 20:07:11 -05:00
if (bearerToken) {
config.headers.common['Authorization'] = `Bearer ${bearerToken}`
} else {
console.warn('[Axios] No Bearer Token for request')
}
2022-12-08 17:54:56 -06:00
const serverUrl = store.getters['user/getServerAddress']
2021-09-01 20:07:11 -05:00
if (serverUrl) {
config.url = `${serverUrl}${config.url}`
}
console.log('[Axios] Request out', config.url)
})
$axios.onError(error => {
console.error('Axios error code', error)
2021-09-01 20:07:11 -05:00
})
}