hailu
2024-12-02 0bbcee731e5259feadd261e8a84c3e27b8387e01
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
import Vue from 'vue';
import axios from 'axios';
import { msg } from '../main'; // 引入 msg 函数
 
// 判断当前环境
const env = process.env.NODE_ENV;
console.log(env);
let baseURL = '';
if (env === 'development') {
  baseURL = '/api';
} else {
  baseURL = 'http://rczd.rensofter.com/';
}
 
const instance = axios.create({
  baseURL: baseURL, // 替换为您的 API 地址
  headers: {
    'Content-Type': 'application/json'
  }
});
 
// 请求拦截器
instance.interceptors.request.use(
  config => {
    // 在发送请求之前做些什么
    return config;
  },
  error => {
    // 对请求错误做些什么
    return Promise.reject(error);
  }
);
 
// 响应拦截器
instance.interceptors.response.use(
  response => {
    // 对响应数据做些什么
    if (response.data.TimeOutFlag) {
      console.log(response.data.TimeOutFlag);
      msg(response.data.Msg); // 使用 msg 函数
      uni.navigateTo({
        url: '/pages/public/login'
      });
    }
    return response.data;
  },
  error => {
    // 对响应错误做些什么
    return Promise.reject(error);
  }
);
 
// 封装常用的 HTTP 方法
const http = {
  get: (url, params) => instance.get(url, {
    params
  }),
  post: (url, data) => instance.post(url, data),
  put: (url, data) => instance.put(url, data),
  delete: (url, params) => instance.delete(url, {
    params
  })
};
 
export default http;