index.ts 1.0 KB

1234567891011121314151617181920212223242526272829303132333435
  1. import { Persistent, BasicKeys } from '@/utils/cache/persistent';
  2. import { CacheTypeEnum, TOKEN_KEY } from '@/enums/cacheEnum';
  3. import projectSetting from '@/settings/projectSetting';
  4. import sha256 from 'crypto-js/sha256';
  5. const { permissionCacheType } = projectSetting;
  6. const isLocal = permissionCacheType === CacheTypeEnum.LOCAL;
  7. export function getToken() {
  8. return getAuthCache(TOKEN_KEY);
  9. }
  10. export function getAuthCache<T>(key: BasicKeys) {
  11. const fn = isLocal ? Persistent.getLocal : Persistent.getSession;
  12. return fn(key) as T;
  13. }
  14. export function setAuthCache(key: BasicKeys, value) {
  15. const fn = isLocal ? Persistent.setLocal : Persistent.setSession;
  16. return fn(key, value, true);
  17. }
  18. export function clearAuthCache(immediate = true) {
  19. const fn = isLocal ? Persistent.clearLocal : Persistent.clearSession;
  20. return fn(immediate);
  21. }
  22. /**
  23. * 创建密码
  24. * @param username
  25. * @param password
  26. */
  27. export const createPassword = (username: string, password: string) => {
  28. return sha256(sha256(`${username}${password}888888$#@`)).toString();
  29. };