axios.js 887 B

12345678910111213141516171819202122232425262728293031
  1. export default function ({ $axios, redirect, store }) {
  2. $axios.onRequest(config => {
  3. if(!config.params.noXaccessId){
  4. $axios.setHeader('x-accessid', `${store.state.profile.access.id}`)
  5. if (store.state.profile.access.switchId) {
  6. $axios.setHeader('x-switch-user', `${store.state.profile.access.switchId}`)
  7. }
  8. $axios.setToken(`${store.state.profile.access.bearer}`, 'Bearer')
  9. }else{
  10. delete config.headers.common['Authorization']
  11. delete config.headers.common['x-accessid']
  12. $axios.setHeader('x-accessid', false)
  13. $axios.setToken(false)
  14. }
  15. })
  16. $axios.onResponse(response => {
  17. })
  18. $axios.onError((error) => {
  19. // In case of unauthorized, redirect to a specific page
  20. if (error.statusCode === 401) {
  21. redirect('/login')
  22. }
  23. if (error.statusCode === 403) {
  24. console.debug('forbidden')
  25. }
  26. })
  27. }