api.ts 858 B

1234567891011121314151617181920212223242526272829303132333435
  1. import axios, { AxiosResponse } from 'axios';
  2. // 创建axios实例
  3. const axiosInstance = axios.create({
  4. baseURL: '/bigmodel-api',
  5. timeout: 300000,// 请求超时5分钟
  6. });
  7. // 请求拦截器
  8. axiosInstance.interceptors.request.use(
  9. (config: any) => {
  10. return config;
  11. }
  12. );
  13. // 响应拦截器
  14. axiosInstance.interceptors.response.use(
  15. (response: AxiosResponse) => {// 成功信息
  16. const { config, data } = response;
  17. if (config.responseType === 'blob') {
  18. return Promise.resolve(data);
  19. } else {
  20. if (data.code === 200) {// 成功
  21. return Promise.resolve(data);
  22. } else {// 失败
  23. return Promise.reject(data);
  24. }
  25. }
  26. },
  27. (error) => {// 错误信息
  28. return Promise.reject();
  29. }
  30. );
  31. export default axiosInstance;