|
@@ -1,12 +1,22 @@
|
|
-import { getToken } from '@/utils/auth'
|
|
|
|
|
|
+import {
|
|
|
|
+ getToken
|
|
|
|
+} from '@/utils/auth'
|
|
|
|
+import {
|
|
|
|
+ store
|
|
|
|
+} from '@/store/index.js'
|
|
|
|
+import globalModal from "@/components/dialog-notification/dialog-notification.vue";
|
|
// import baseURL from '@/api/base/path.js'
|
|
// import baseURL from '@/api/base/path.js'
|
|
|
|
|
|
-function request({url, data, method="GET"}) {
|
|
|
|
|
|
+function behindRequist({
|
|
|
|
+ url,
|
|
|
|
+ data,
|
|
|
|
+ method = "GET"
|
|
|
|
+}) {
|
|
let token = 'Bearer ' + getToken();
|
|
let token = 'Bearer ' + getToken();
|
|
let header = {
|
|
let header = {
|
|
- Authorization: token
|
|
|
|
|
|
+ Authorization: token
|
|
}
|
|
}
|
|
- return new Promise((resolve, reject)=>{
|
|
|
|
|
|
+ return new Promise((resolve, reject) => {
|
|
const urlList = uni.getStorageSync('baseUrl')
|
|
const urlList = uni.getStorageSync('baseUrl')
|
|
uni.request({
|
|
uni.request({
|
|
url: JSON.parse(urlList).baseUrl + url,
|
|
url: JSON.parse(urlList).baseUrl + url,
|
|
@@ -50,5 +60,58 @@ function request({url, data, method="GET"}) {
|
|
})
|
|
})
|
|
})
|
|
})
|
|
}
|
|
}
|
|
-export default {request}
|
|
|
|
-
|
|
|
|
|
|
+// 拦截请求的函数
|
|
|
|
+function request(options) {
|
|
|
|
+ return preRequest().then(() => {
|
|
|
|
+ // 前置请求成功,继续执行原请求
|
|
|
|
+ return behindRequist(options);
|
|
|
|
+ }).catch((error) => {
|
|
|
|
+ // 前置请求失败,处理错误
|
|
|
|
+ uni.showToast({
|
|
|
|
+ icon: 'none',
|
|
|
|
+ title: error.message || '前置请求失败',
|
|
|
|
+ duration: 1500
|
|
|
|
+ });
|
|
|
|
+ return Promise.reject(error);
|
|
|
|
+ });
|
|
|
|
+}
|
|
|
|
+// 前置请求函数
|
|
|
|
+function preRequest() {
|
|
|
|
+ let token = 'Bearer ' + getToken();
|
|
|
|
+ let header = {
|
|
|
|
+ Authorization: token
|
|
|
|
+ };
|
|
|
|
+ return new Promise((resolve, reject) => {
|
|
|
|
+ const urlList = uni.getStorageSync('baseUrl')
|
|
|
|
+ console.log(urlList)
|
|
|
|
+ uni.request({
|
|
|
|
+ url: JSON.parse(urlList).baseUrl + '/business/notification/getHasNotification', // 前置请求的URL
|
|
|
|
+ header,
|
|
|
|
+ method: 'GET',
|
|
|
|
+ success: (res) => {
|
|
|
|
+ console.log(res)
|
|
|
|
+ if (res.data.code == 200) {
|
|
|
|
+ uni.navigateTo({
|
|
|
|
+ url: "/pages/notification/index",
|
|
|
|
+ success: (resqust) => {
|
|
|
|
+ // 通过eventChannel向被打开页面传送数据
|
|
|
|
+ resqust.eventChannel.emit("notification", {
|
|
|
|
+ data: res.data.data[0]
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ } else {
|
|
|
|
+ // 前置请求成功,继续执行原请求
|
|
|
|
+ resolve(true);
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ fail: (err) => {
|
|
|
|
+ // 前置请求失败,不执行原请求
|
|
|
|
+ reject(err);
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ });
|
|
|
|
+}
|
|
|
|
+export default {
|
|
|
|
+ request
|
|
|
|
+}
|