auth.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. /**
  2. * Token 存储管理
  3. * @author steelwei
  4. */
  5. import { stopGpsTimer } from './gps'
  6. const TOKEN_KEY = 'fulfiller_token'
  7. const USER_INFO_KEY = 'fulfiller_user_info'
  8. /**
  9. * 获取 Token
  10. */
  11. export function getToken() {
  12. return uni.getStorageSync(TOKEN_KEY) || ''
  13. }
  14. /**
  15. * 设置 Token
  16. */
  17. export function setToken(token) {
  18. uni.setStorageSync(TOKEN_KEY, token)
  19. }
  20. /**
  21. * 移除 Token
  22. */
  23. export function removeToken() {
  24. uni.removeStorageSync(TOKEN_KEY)
  25. }
  26. /**
  27. * 是否已登录
  28. */
  29. export function isLoggedIn() {
  30. return !!getToken()
  31. }
  32. /**
  33. * 获取缓存的用户信息
  34. */
  35. export function getUserInfo() {
  36. const str = uni.getStorageSync(USER_INFO_KEY)
  37. if (str) {
  38. try {
  39. return JSON.parse(str)
  40. } catch (e) {
  41. return null
  42. }
  43. }
  44. return null
  45. }
  46. /**
  47. * 设置用户信息缓存
  48. */
  49. export function setUserInfo(info) {
  50. uni.setStorageSync(USER_INFO_KEY, JSON.stringify(info))
  51. }
  52. /**
  53. * 清除用户信息缓存
  54. */
  55. export function removeUserInfo() {
  56. uni.removeStorageSync(USER_INFO_KEY)
  57. }
  58. /**
  59. * 清除所有登录信息
  60. */
  61. export function clearAuth() {
  62. removeToken()
  63. removeUserInfo()
  64. stopGpsTimer()
  65. }