|
@@ -1,51 +1,51 @@
|
|
|
-
|
|
|
-
|
|
|
-import wxApp from "./wecaht.min.app.js";
|
|
|
- import request from "./request.js"
|
|
|
+import wxApp from "./wecaht.min.app.js";
|
|
|
+import request from "./http.js"
|
|
|
let token = null;
|
|
|
-let requestLoginTime = 0;
|
|
|
+let requestLoginTime = 0;
|
|
|
|
|
|
// 获取token
|
|
|
-export const getToken = async () => {
|
|
|
-
|
|
|
- if (getToken.promise) return getToken.promise;
|
|
|
- if(!token) token = uni.getStorageSync('token');
|
|
|
-
|
|
|
+export const getToken = async () => {
|
|
|
+ if (getToken.promise) return getToken.promise;
|
|
|
+ if (!token) token = uni.getStorageSync('token');
|
|
|
// token格式化
|
|
|
- if (token && typeof token === "string") token = JSON.parse(token);
|
|
|
-
|
|
|
- console.log("checkToken", checkToken(token));
|
|
|
-
|
|
|
- if (!token) getToken.promise = login();
|
|
|
- else if (checkToken(token)) return Promise.resolve(token.token);
|
|
|
- else {
|
|
|
+ if (token && typeof token === "string") {
|
|
|
+ token = JSON.parse(token);
|
|
|
+ }
|
|
|
+ console.log("checkToken", checkToken(token));
|
|
|
+ if (!token) {
|
|
|
getToken.promise = login();
|
|
|
+ } else if (checkToken(token)) {
|
|
|
+ return Promise.resolve(token.token);
|
|
|
+ } else {
|
|
|
+ getToken = refreshToken();
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
getToken.promise = getToken.promise
|
|
|
- .finally(() => {
|
|
|
+ .finally(() => {
|
|
|
getToken.promise = null;
|
|
|
})
|
|
|
.then(r => {
|
|
|
- console.log("refresh");
|
|
|
+ console.log("refresh",r);
|
|
|
return setToken(r);
|
|
|
});
|
|
|
-
|
|
|
return getToken.promise;
|
|
|
+
|
|
|
};
|
|
|
|
|
|
|
|
|
// 登录
|
|
|
export const login = async () => {
|
|
|
- requestLoginTime++;
|
|
|
- if (requestLoginTime != 1) {
|
|
|
- let loginResponed = await loginPromise();
|
|
|
- }
|
|
|
- let code = await (wxApp.getWxMinAppUuerCode());
|
|
|
- let res = request.post("/api/auth/login",{code:code,appid:wxApp.getWXAppId()});
|
|
|
+ requestLoginTime++;
|
|
|
+ if (requestLoginTime != 1) {
|
|
|
+ let loginResponed = await loginPromise();
|
|
|
+ }
|
|
|
+ let code = await (wxApp.getWxMinAppUuerCode());
|
|
|
+ let res = await request.post("/api/auth/login", {
|
|
|
+ code: code,
|
|
|
+ appid: wxApp.getWXAppId()
|
|
|
+ });
|
|
|
requestLoginTime = 0;
|
|
|
return res;
|
|
|
- // return
|
|
|
};
|
|
|
|
|
|
|
|
@@ -68,26 +68,13 @@ export const checkResult = r => {
|
|
|
};
|
|
|
|
|
|
// 刷新token
|
|
|
-const refreshToken = () => {
|
|
|
-
|
|
|
- // let res = request.post("/api/auth/refreshToken",{refreshToken:code,appid:wxApp.getWXAppId()});
|
|
|
- console.log('11111111111sssssssssssssssss',token);
|
|
|
- // return fly
|
|
|
- // .get("/refreshToken", {
|
|
|
- // token: token.token
|
|
|
- // }, {
|
|
|
- // headers: {
|
|
|
- // Authorization: token.token
|
|
|
- // }
|
|
|
- // })
|
|
|
- // .then(r => {
|
|
|
- // return r;
|
|
|
- // })
|
|
|
- // .catch(e => {
|
|
|
- // console.log(e);
|
|
|
- // console.error("刷新token失败");
|
|
|
- // return Promise.reject(e);
|
|
|
- // });
|
|
|
+const refreshToken = () => {
|
|
|
+ let res = request.post("/api/auth/refreshToken", {
|
|
|
+ refreshToken: token.refreshToken,
|
|
|
+ appid: wxApp.getWXAppId()
|
|
|
+ });
|
|
|
+ console.log('refreshTokenrrrrr', res);
|
|
|
+ return res;
|
|
|
};
|
|
|
|
|
|
// 检查token的有效期
|
|
@@ -97,21 +84,23 @@ const checkToken = t => {
|
|
|
|
|
|
// 设置token
|
|
|
const setToken = async t => {
|
|
|
- token = formatToken(t);
|
|
|
- uni.setStorageSync("token",token);
|
|
|
+ console.log('bbbbbbbbbbbbbbbbbbbbbbb', t);
|
|
|
+ token = formatToken(t);
|
|
|
+ console.log('tttttttttt', token);
|
|
|
+ uni.setStorageSync("token", token);
|
|
|
return t.token;
|
|
|
};
|
|
|
|
|
|
-// 清除token
|
|
|
+// 清除token
|
|
|
export const clearToken = async () => {
|
|
|
- token = null;
|
|
|
+ token = null;
|
|
|
uni.removeStorageSync('token');
|
|
|
- console.log("clear token done");
|
|
|
-};
|
|
|
+ console.log("clear token done");
|
|
|
+};
|
|
|
|
|
|
// 处理token的格式
|
|
|
-const formatToken = t => {
|
|
|
+const formatToken = t => {
|
|
|
t.token = "Bearer " + t.accessToken;
|
|
|
- t.time = ((t.expiration -600)* 1000);
|
|
|
- return t;
|
|
|
+ t.time = ((t.expiration - 600) * 1000);
|
|
|
+ return t;
|
|
|
};
|