hrms-edm/Services/client/src/services/HttpService.ts
2023-11-30 15:36:03 +07:00

32 lines
846 B
TypeScript

import axios from 'axios'
import { getToken } from './KeyCloakService'
import { useErrorStore } from '@/stores/error'
const error = useErrorStore()
const instance = axios.create()
instance.interceptors.request.use(async (config) => {
config.headers.Authorization = `Bearer ${await getToken()}`
return config
})
instance.interceptors.response.use(
(res) => res,
(err) => {
const status = err.response.status
const data = err.response.data
error.title = 'เกิดข้อผิดพลาด'
if (status === 500) {
error.msg = 'เกิดข้อผิดพลาด ไม่สามารถดำเนินการต่อได้ กรุณาลองใหม่อีกครั้ง'
} else {
error.msg = data.message
}
error.show()
},
)
export default instance