From 98f494cf633e3acf5c20f3e9de0d708f2a6c2045 Mon Sep 17 00:00:00 2001
From: ZhangXianQiang <1135831638@qq.com>
Date: 星期五, 05 七月 2024 09:39:59 +0800
Subject: [PATCH] feat:视频浏览

---
 src/api/index.js |   83 +++++++++++++++++++++++++++++++++++++++++
 1 files changed, 83 insertions(+), 0 deletions(-)

diff --git a/src/api/index.js b/src/api/index.js
index e69de29..6457384 100644
--- a/src/api/index.js
+++ b/src/api/index.js
@@ -0,0 +1,83 @@
+import axios from "axios";
+import { ElMessage } from 'element-plus'
+
+axios.defaults.headers["Content-Type"] = "application/json;charset=utf-8";
+
+
+const service = axios.create({
+  baseURL: import.meta.env.VITE_BASE_API_URL,
+  timeout: 15000,
+});
+
+/**
+ * 鑷畾涔夌姸鎬佺爜澶勭悊
+ * @param {*} status 鐘舵�佺爜
+ * @param {*} info 淇℃伅
+ */
+const errorHandle = (status, info) => {
+  switch (status) {
+    case 400:
+      console.log("璇箟鏈夎");
+      break;
+    case 401:
+      console.log("鏈嶅姟鍣ㄨ璇佸け璐�");
+      location.href = '/login';
+      
+      break;
+    case 403:
+      console.log("鏈嶅姟鍣ㄦ嫆缁濊闂�");
+      break;
+    case 404:
+      console.log("鍦板潃閿欒");
+      break;
+    case 500:
+      console.log("鏈嶅姟鍣ㄩ亣鍒版剰澶�");
+      break;
+    case 502:
+      console.log("鏈嶅姟鍣ㄦ棤鍝嶅簲");
+      break;
+    default:
+      console.log("鍏朵粬閿欒");
+      break;
+  }
+  ElMessage.error({
+    message: info.message || '绯荤粺閿欒锛岃绋嶅悗閲嶈瘯',
+    grouping: true,
+  });
+};
+
+
+// request鎷︽埅鍣�
+service.interceptors.request.use(
+  (config) => {
+    
+    // const token = localStorage.getItem('authToken');
+    // if (token) {
+    //     config.headers['Authorization'] = `Bearer ${token}`;
+    // }
+
+    return config;
+  },
+  (error) => {
+    // 杩斿洖Promise.reject(error)锛岃繖鏍蜂細瑙﹀彂鍚庣画鐨勯敊璇鐞嗗櫒
+    Promise.reject(error);
+  },
+);
+
+// response鎷︽埅鍣�
+service.interceptors.response.use(
+  (response) => {
+    if (response.status === 200 && response.data.code === 1){
+      return Promise.resolve(response.data);
+    } else {
+      errorHandle(response.data.code, response.data);
+      return Promise.reject(response.data);
+    }
+  },
+  (error) => {
+    const { response } = error;
+    errorHandle(response.status, response);
+  },
+);
+
+export default service;

--
Gitblit v1.8.0