Files
TIMSDK/MiniProgram/TUIKit/miniprogram/utils/token.js
T
chenximo ee86ebf0f1 feat: TUIKit update (#1063)
* feat: TUIKit update

Co-authored-by: chenximo <chenximo@tencent.com>
2021-11-19 18:55:13 +08:00

66 lines
1.4 KiB
JavaScript

import logger from './logger'
const STORAGE_KEY = 'token'
const VALID_SPAN = 30 * 24 * 3600 * 1000 // 有效期,默认30天
let app = getApp()
/**
* 判断本地存储的 token 是否有效
*/
export function isTokenValided(expiresIn) {
return Date.now() <= expiresIn
}
/**
* 保存 Token 到本地,默认保存有效期 30 天
* @param {String} options.token
* @param {String} options.phone
* @returns {Promise}
*/
export function setTokenStorage(options) {
logger.log(`| TUIKit | TUI-utils | setTokenStorage | options:${options}`)
return new Promise((resolve, reject) => {
const data = {
expiresIn: Date.now() + VALID_SPAN,
userInfo: {
token: options.userInfo.token,
phone: options.userInfo.phone,
userID: options.userInfo.userID,
userSig: options.userInfo.userSig,
},
}
if (!app) {
app = getApp()
}
app.globalData.expiresIn = data.expiresIn
wx.setStorage({
key: STORAGE_KEY,
data,
success: resolve,
fail: reject,
})
})
}
export function getTokenStorage() {
return new Promise((resolve, reject) => {
wx.getStorage({
key: STORAGE_KEY,
success: ({ data }) => {
resolve(data)
},
fail: reject,
})
})
}
export function removeTokenStorage() {
return new Promise((resolve, reject) => {
wx.removeStorage({
key: STORAGE_KEY,
success: resolve,
fail: reject,
})
})
}