From 4771f0fa8bc2238e9ad005ea23a8d4c7576cd416 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期一, 18 七月 2022 14:57:17 +0800
Subject: [PATCH] 2022-07-18

---
 src/api/index.js |   40 +++++++++++++++++++++++-----------------
 1 files changed, 23 insertions(+), 17 deletions(-)

diff --git a/src/api/index.js b/src/api/index.js
index 10a19bd..574fa7a 100644
--- a/src/api/index.js
+++ b/src/api/index.js
@@ -110,23 +110,29 @@
   /**
    * @description 寰俊涓氬姟璇锋眰
    */
-  wxRequest (url, method, param) {
-    let _url = document.location.origin + '/' + window.GLOB.service + url
+  wxAccessToken () {
+    let _url = document.location.origin + '/' + window.GLOB.service + 'wxpay/getaccesstoken'
     if (process.env.NODE_ENV !== 'production') {
-      _url = document.location.origin + '/' + url
+      _url = document.location.origin + '/wxpay/getaccesstoken'
     }
 
-    if (param) {
-      return axios({
-        url: _url,
-        method,
-        data: param
-      })
-    }
-
-    return axios({
-      url: _url,
-      method
+    return new Promise(resolve => {
+      if (window.GLOB.accessToken.accessTime && (parseInt(new Date().getTime() / 1000) - window.GLOB.accessToken.accessTime < 30)) {
+        resolve(window.GLOB.accessToken)
+      } else {
+        window.GLOB.accessToken = {}
+        axios({
+          url: _url,
+          method: 'get'
+        }).then(res => {
+          if (res.oa_access_token || res.mini_access_token) {
+            window.GLOB.accessToken.accessTime = parseInt(new Date().getTime() / 1000)
+            window.GLOB.accessToken.oa_access_token = res.oa_access_token
+            window.GLOB.accessToken.mini_access_token = res.mini_access_token
+          }
+          resolve(res)
+        })
+      }
     })
   }
 
@@ -137,6 +143,9 @@
     let _url = window.GLOB.location + ':8080/' + url
     if (process.env.NODE_ENV === 'production') {
       _url = document.location.origin + ':8080/' + url
+    }
+    if (/https/.test(_url)) {
+      _url = _url.replace(/:8080/g, ':8443')
     }
     
     if (param) {
@@ -224,7 +233,6 @@
 
     let url = '/webapi/dologon/s_visitor_login'
     if (window.GLOB.mainSystemApi) {
-      // url = window.GLOB.mainSystemApi.replace(/\/webapi(.*)/, '/webapi/dologon/s_visitor_login')
       param.rduri = window.GLOB.mainSystemApi.replace(/\/webapi(.*)/, '/webapi/dologon/s_visitor_login')
     }
 
@@ -259,14 +267,12 @@
     if (isCloud) {
       param.debug = 'Y'
       if (options.cloudServiceApi) {
-        // url = options.cloudServiceApi.replace(/\/webapi(.*)/, '/webapi/dologon')
         param.rduri = options.cloudServiceApi.replace(/\/webapi(.*)/, '/webapi/dologon')
       }
     } else if (window.GLOB.mainSystemApi) {
       if (options.sysType !== 'cloud' && window.GLOB.systemType !== 'production') {
         param.linkurl = window.GLOB.linkurl
       }
-      // url = window.GLOB.mainSystemApi.replace(/\/webapi(.*)/, '/webapi/dologon')
       param.rduri = window.GLOB.mainSystemApi.replace(/\/webapi(.*)/, '/webapi/dologon')
     }
 

--
Gitblit v1.8.0