zhongrj
2022-12-27 3e8524cd3d29469f091e7c245d2d1431f508cf25
axios 设置请求携带 token
5 files modified
154 ■■■■ changed files
src/api/dept/index.js 2 ●●● patch | view | raw | blame | history
src/api/home/index.js 2 ●●● patch | view | raw | blame | history
src/api/panorama/index.js 2 ●●● patch | view | raw | blame | history
src/api/police/index.js 4 ●●●● patch | view | raw | blame | history
src/router/axios.js 144 ●●●● patch | view | raw | blame | history
src/api/dept/index.js
@@ -17,7 +17,7 @@
 */
export const getPoliceStationList = () => {
    return request({
        url: '/blade-system/dept/getAllPoliceStation',
        url: '/api/blade-system/dept/getAllPoliceStation',
        method: 'get',
    })
}
src/api/home/index.js
@@ -8,7 +8,7 @@
 */
export const getSchedulingList = () => {
    return request({
        url: `/scheduling/scheduling/page`,
        url: `/api/scheduling/scheduling/page`,
        method: 'get',
        params: {
            current: 1,
src/api/panorama/index.js
@@ -17,7 +17,7 @@
 */
export const getPanoramaList = () => {
    return request({
        url: '/panorama/panorama/all',
        url: '/api/panorama/panorama/all',
        method: 'get',
    })
}
src/api/police/index.js
@@ -17,7 +17,7 @@
 */
export const getHistoricalTrack = (params, requestBaseUrl = 'outside') => {
    return request({
        url: `/position/history/${params.channelId}`,
        url: `/api/position/history/${params.channelId}`,
        method: 'get',
        requestBaseUrl,
        params: params
@@ -32,7 +32,7 @@
 */
export const getCarList = (page, count, serialNumber) => {
    return request({
        url: '/policecar/policecar/page',
        url: '/api/policecar/policecar/page',
        method: 'get',
        params: {
            page,
src/router/axios.js
@@ -13,92 +13,104 @@
 * isSerialize是否开启form表单提交
 * isToken是否需要token
 */
import axios from 'axios'
import router from '@/router/page/index.js'
import { Message } from 'element-ui'
import axios from "axios";
import router from "@/router/page/index.js";
import { Message } from "element-ui";
// 获取公共配置域名
// import router from '@/router/page/index.js'
// import { Message } from 'element-ui'
// import * as auth from '@/utils/auth'
import {Base64} from 'js-base64';
import * as auth from '@/utils/auth'
// 调用后台管理的
const service = axios.create({
    // baseURL: 'http://36.14.255.242:18080/api',
    // baseURL: 'http://192.168.0.102:1888/api',
    // baseURL: 'http://192.168.0.105:18080/api',
    // baseURL: 'http://192.168.0.115:82',
    // baseURL: 'http://192.168.0.112:18080',
    // baseURL: 'http://192.168.0.115:1888/api',
  // baseURL: 'http://36.14.255.242:18080/api',
  // baseURL: 'http://192.168.0.102:1888/api',
  // baseURL: 'http://192.168.0.105:18080/api',
  // baseURL: 'http://192.168.0.115:82',
  // baseURL: 'http://192.168.0.112:18080',
  // baseURL: 'http://192.168.0.115:1888/api',
    // baseURL: 'http://192.168.0.115:82',
    // baseURL: 'http://192.168.0.106:1888/api',
  // baseURL: 'http://192.168.0.115:82',
  // baseURL: 'http://192.168.0.106:1888/api',
    // 内网部署地址
    // baseURL: 'http://10.141.11.11:82',
    timeout: 600000 // request timeout
})
  // 内网部署地址
  // baseURL: 'http://10.141.11.11:82',
  timeout: 600000, // request timeout
});
// 返回其他状态码
service.defaults.validateStatus = function (status) {
    return status >= 200 && status <= 500
}
  return status >= 200 && status <= 500;
};
// 跨域请求,允许保存cookie
// service.defaults.withCredentials = true
// http request拦截
service.interceptors.request.use(
    (config) => {
        // 调用监控平台的
        if (config.requestBaseUrl == 'outside') {
            // config.baseURL = 'http://192.168.0.115:1888/api'
            // config.baseURL = 'http://192.168.0.105:80/api'
            // config.baseURL = 'http://192.168.0.115:18080/api'
            // 内网部署地址
            // config.baseURL = 'http://10.141.11.11:18185/api'
            config.baseURL = 'http://192.168.0.115:18185/api'
            // config.baseURL = 'http://192.168.0.106:1888/api'
        } else if (config.requestBaseUrl == 'fengt') {
            config.baseURL = 'http://10.141.11.11:18080'
        }
        // const token = auth.getToken()
        // 添加token
        // token && (config.headers.token = token)
        return config
    },
    (error) => {
        return Promise.reject(error)
  (config) => {
    // 调用监控平台的
    if (config.requestBaseUrl == "outside") {
      // config.baseURL = 'http://192.168.0.115:1888/api'
      // config.baseURL = 'http://192.168.0.105:80/api'
      // config.baseURL = 'http://192.168.0.115:18080/api'
      // 内网部署地址
      // config.baseURL = 'http://10.141.11.11:18185/api'
      config.baseURL = "http://192.168.0.115:18185/api";
      // config.baseURL = 'http://192.168.0.106:1888/api'
    } else if (config.requestBaseUrl == "fengt") {
      config.baseURL = "http://10.141.11.11:18080";
    }
)
    //headers判断是否需要
    const authorization = config.authorization === false;
    if (!authorization) {
      config.headers["Authorization"] = `Basic ${Base64.encode("saber:saber_secret")}`;
    }
    //让每个请求携带token
    const meta = config.meta || {};
    const isToken = meta.isToken === false;
    if (auth.getToken() && !isToken) {
      config.headers['Blade-Auth'] = "bearer " + auth.getToken();
    }
    //headers中配置text请求
    if (config.text === true) {
      config.headers["Content-Type"] = "text/plain";
    }
    // const token = auth.getToken()
    // 添加token
    // token && (config.headers.token = token)
    return config;
  },
  (error) => {
    return Promise.reject(error);
  }
);
// http response 拦截
service.interceptors.response.use(
    (res) => {
        const code = res.data.code
        if (code == 403 && res.data.data == 'token 验证失败!') {
            // sessionStorage.removeItem('token')
            router.push('/login')
        } else {
            return res
        }
    },
    (error) => {
        Message({
            message: error.message,
            type: 'error',
            duration: 5 * 1000
        })
        return Promise.reject(new Error(error))
  (res) => {
    const code = res.data.code;
    if (code==401 || code == 403 || res.data.data == "token 验证失败!") {
      // sessionStorage.removeItem('token')
      router.push("/login");
    } else {
      return res;
    }
)
  },
  (error) => {
    Message({
      message: error.message,
      type: "error",
      duration: 5 * 1000,
    });
export default service
    return Promise.reject(new Error(error));
  }
);
export default service;