code refactor

This commit is contained in:
MaysWind
2021-01-04 23:52:57 +08:00
parent 5077b93105
commit b7589e57f2
20 changed files with 561 additions and 293 deletions
+16 -23
View File
@@ -96,31 +96,22 @@ export default {
return axios.get('logout.json');
},
refreshToken: () => {
needBlockRequest = true;
return new Promise((resolve) => {
needBlockRequest = true;
return axios.post('v1/tokens/refresh.json', {} , {
ignoreBlocked: true
}).then(response => {
const data = response.data;
axios.post('v1/tokens/refresh.json', {}, {
ignoreBlocked: true
}).then(response => {
const data = response.data;
if (data && data.success && data.result && data.result.newToken) {
userState.updateToken(data.result.newToken);
userState.updateUserInfo(data.result.user);
resolve(response);
needBlockRequest = false;
if (data.result.oldTokenId) {
axios.post('v1/tokens/revoke.json', {
tokenId: data.result.oldTokenId
}, {
ignoreError: true
});
}
}
needBlockRequest = false;
return data.result.newToken;
}).then(newToken => {
blockedRequests.forEach(func => func(newToken));
blockedRequests.length = 0;
return data.result.newToken;
}).then(newToken => {
blockedRequests.forEach(func => func(newToken));
blockedRequests.length = 0;
});
});
},
getDataExportUrl: () => {
@@ -130,9 +121,11 @@ export default {
getTokens: () => {
return axios.get('v1/tokens/list.json');
},
revokeToken: ({ tokenId }) => {
revokeToken: ({ tokenId, ignoreError }) => {
return axios.post('v1/tokens/revoke.json', {
tokenId
}, {
ignoreError: !!ignoreError
});
},
revokeAllTokens: () => {
+4 -12
View File
@@ -160,16 +160,8 @@ function updateUserInfo(user) {
}
}
function updateTokenAndUserInfo(item) {
if (utils.isObject(item)) {
if (item.token) {
updateToken(item.token);
}
if (item.user) {
updateUserInfo(item.user);
}
}
function clearUserInfo() {
localStorage.removeItem(userInfoLocalStorageKey);
}
function clearTokenAndUserInfo(clearAppLockState) {
@@ -179,7 +171,7 @@ function clearTokenAndUserInfo(clearAppLockState) {
sessionStorage.removeItem(tokenSessionStorageKey);
localStorage.removeItem(tokenLocalStorageKey);
localStorage.removeItem(userInfoLocalStorageKey);
clearUserInfo();
}
export default {
@@ -198,6 +190,6 @@ export default {
isCorrectPinCode,
updateToken,
updateUserInfo,
updateTokenAndUserInfo,
clearUserInfo,
clearTokenAndUserInfo
};