app.ts 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. import { message } from 'antd';
  2. import type { RequestConfig } from 'umi';
  3. export const request: RequestConfig = {
  4. timeout: 10000,
  5. // other axios options you want
  6. errorConfig: {
  7. errorHandler(){
  8. },
  9. errorThrower(){
  10. }
  11. },
  12. requestInterceptors: [
  13. (url, options) => {
  14. const baseUrl = process.env.NODE_ENV === 'production' ? '' : '/api'//'http://ab.dev.jbpm.shalu.com' // https://edesign.shalu.com'
  15. const enterpriseCode = sessionStorage.getItem('enterpriseCode');
  16. const token = localStorage.getItem('token_' + enterpriseCode);
  17. if(token) {
  18. if(!options.headers) {
  19. options.headers = {}
  20. }
  21. options.headers.Authorization = token
  22. }
  23. return {
  24. url: baseUrl + url,
  25. options
  26. }
  27. }
  28. ],
  29. responseInterceptors: [
  30. (response) => {
  31. const {data = {} as any, config} = response;
  32. if(data?.error) {
  33. message.error(data.error);
  34. return Promise.reject(data.error);
  35. }
  36. return response;
  37. }
  38. ]
  39. };