first commit
Some checks failed
Check / lint (18.x, macos-latest) (push) Has been cancelled
Check / lint (18.x, ubuntu-latest) (push) Has been cancelled
Check / lint (18.x, windows-latest) (push) Has been cancelled
Check / lint (20.x, macos-latest) (push) Has been cancelled
Check / lint (20.x, ubuntu-latest) (push) Has been cancelled
Check / lint (20.x, windows-latest) (push) Has been cancelled
Check / lint (22.x, macos-latest) (push) Has been cancelled
Check / lint (22.x, ubuntu-latest) (push) Has been cancelled
Check / lint (22.x, windows-latest) (push) Has been cancelled
Check / typecheck (18.x, macos-latest) (push) Has been cancelled
Check / typecheck (18.x, ubuntu-latest) (push) Has been cancelled
Check / typecheck (18.x, windows-latest) (push) Has been cancelled
Check / typecheck (20.x, macos-latest) (push) Has been cancelled
Check / typecheck (20.x, ubuntu-latest) (push) Has been cancelled
Check / typecheck (20.x, windows-latest) (push) Has been cancelled
Check / typecheck (22.x, macos-latest) (push) Has been cancelled
Check / typecheck (22.x, ubuntu-latest) (push) Has been cancelled
Check / typecheck (22.x, windows-latest) (push) Has been cancelled
Check / build (build, 18.x, macos-latest) (push) Has been cancelled
Check / build (build, 18.x, ubuntu-latest) (push) Has been cancelled
Check / build (build, 18.x, windows-latest) (push) Has been cancelled
Check / build (build, 20.x, macos-latest) (push) Has been cancelled
Check / build (build, 20.x, ubuntu-latest) (push) Has been cancelled
Check / build (build, 20.x, windows-latest) (push) Has been cancelled
Check / build (build, 22.x, macos-latest) (push) Has been cancelled
Check / build (build, 22.x, ubuntu-latest) (push) Has been cancelled
Check / build (build, 22.x, windows-latest) (push) Has been cancelled
Check / build (build:app, 18.x, macos-latest) (push) Has been cancelled
Check / build (build:app, 18.x, ubuntu-latest) (push) Has been cancelled
Check / build (build:app, 18.x, windows-latest) (push) Has been cancelled
Check / build (build:app, 20.x, macos-latest) (push) Has been cancelled
Check / build (build:app, 20.x, ubuntu-latest) (push) Has been cancelled
Check / build (build:app, 20.x, windows-latest) (push) Has been cancelled
Check / build (build:app, 22.x, macos-latest) (push) Has been cancelled
Check / build (build:app, 22.x, ubuntu-latest) (push) Has been cancelled
Check / build (build:app, 22.x, windows-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 18.x, macos-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 18.x, ubuntu-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 18.x, windows-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 20.x, macos-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 20.x, ubuntu-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 20.x, windows-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 22.x, macos-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 22.x, ubuntu-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 22.x, windows-latest) (push) Has been cancelled
Some checks failed
Check / lint (18.x, macos-latest) (push) Has been cancelled
Check / lint (18.x, ubuntu-latest) (push) Has been cancelled
Check / lint (18.x, windows-latest) (push) Has been cancelled
Check / lint (20.x, macos-latest) (push) Has been cancelled
Check / lint (20.x, ubuntu-latest) (push) Has been cancelled
Check / lint (20.x, windows-latest) (push) Has been cancelled
Check / lint (22.x, macos-latest) (push) Has been cancelled
Check / lint (22.x, ubuntu-latest) (push) Has been cancelled
Check / lint (22.x, windows-latest) (push) Has been cancelled
Check / typecheck (18.x, macos-latest) (push) Has been cancelled
Check / typecheck (18.x, ubuntu-latest) (push) Has been cancelled
Check / typecheck (18.x, windows-latest) (push) Has been cancelled
Check / typecheck (20.x, macos-latest) (push) Has been cancelled
Check / typecheck (20.x, ubuntu-latest) (push) Has been cancelled
Check / typecheck (20.x, windows-latest) (push) Has been cancelled
Check / typecheck (22.x, macos-latest) (push) Has been cancelled
Check / typecheck (22.x, ubuntu-latest) (push) Has been cancelled
Check / typecheck (22.x, windows-latest) (push) Has been cancelled
Check / build (build, 18.x, macos-latest) (push) Has been cancelled
Check / build (build, 18.x, ubuntu-latest) (push) Has been cancelled
Check / build (build, 18.x, windows-latest) (push) Has been cancelled
Check / build (build, 20.x, macos-latest) (push) Has been cancelled
Check / build (build, 20.x, ubuntu-latest) (push) Has been cancelled
Check / build (build, 20.x, windows-latest) (push) Has been cancelled
Check / build (build, 22.x, macos-latest) (push) Has been cancelled
Check / build (build, 22.x, ubuntu-latest) (push) Has been cancelled
Check / build (build, 22.x, windows-latest) (push) Has been cancelled
Check / build (build:app, 18.x, macos-latest) (push) Has been cancelled
Check / build (build:app, 18.x, ubuntu-latest) (push) Has been cancelled
Check / build (build:app, 18.x, windows-latest) (push) Has been cancelled
Check / build (build:app, 20.x, macos-latest) (push) Has been cancelled
Check / build (build:app, 20.x, ubuntu-latest) (push) Has been cancelled
Check / build (build:app, 20.x, windows-latest) (push) Has been cancelled
Check / build (build:app, 22.x, macos-latest) (push) Has been cancelled
Check / build (build:app, 22.x, ubuntu-latest) (push) Has been cancelled
Check / build (build:app, 22.x, windows-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 18.x, macos-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 18.x, ubuntu-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 18.x, windows-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 20.x, macos-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 20.x, ubuntu-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 20.x, windows-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 22.x, macos-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 22.x, ubuntu-latest) (push) Has been cancelled
Check / build (build:mp-weixin, 22.x, windows-latest) (push) Has been cancelled
This commit is contained in:
110
src/App.vue
Normal file
110
src/App.vue
Normal file
@@ -0,0 +1,110 @@
|
||||
<script setup>
|
||||
import { onLaunch } from '@dcloudio/uni-app'
|
||||
import { refreshToken, getUserInfo, wxminiLogin } from '@/api/apis'
|
||||
import { getAgentInfo } from '@/apis/agent'
|
||||
|
||||
|
||||
onLaunch(() => {
|
||||
login()
|
||||
refreshTokenIfNeeded()
|
||||
getUser()
|
||||
getAgentInformation()
|
||||
})
|
||||
const login = () => {
|
||||
const token = uni.getStorageSync("token")
|
||||
if (token) {
|
||||
return
|
||||
}
|
||||
uni.login({
|
||||
success: (res) => {
|
||||
let code = res.code
|
||||
wxminiLogin({ code }).then(res => {
|
||||
if (res.code === 200) {
|
||||
uni.setStorageSync("token", res.data.accessToken)
|
||||
uni.setStorageSync("refreshAfter", res.data.refreshAfter)
|
||||
uni.setStorageSync("accessExpire", res.data.accessExpire)
|
||||
getUser()
|
||||
getAgentInformation()
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
const refreshTokenIfNeeded = async () => {
|
||||
const token = uni.getStorageSync("token")
|
||||
const refreshAfter = uni.getStorageSync("refreshAfter")
|
||||
const accessExpire = uni.getStorageSync("accessExpire")
|
||||
const currentTime = new Date().getTime()
|
||||
|
||||
// 如果 token 已过期,直接返回
|
||||
if (accessExpire) {
|
||||
const accessExpireInMilliseconds = parseInt(accessExpire) * 1000 // 转换为毫秒级
|
||||
if (currentTime > accessExpireInMilliseconds) {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
// 如果没有 token,直接返回
|
||||
if (!token) {
|
||||
return
|
||||
}
|
||||
|
||||
// 如果有 refreshAfter,检查当前时间是否超过 refreshAfter
|
||||
if (refreshAfter) {
|
||||
const refreshAfterInMilliseconds = parseInt(refreshAfter) * 1000 // 转换为毫秒级
|
||||
if (currentTime < refreshAfterInMilliseconds) {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
// 如果没有 refreshAfter 或者时间超过 refreshAfter,执行刷新 token 的请求
|
||||
try {
|
||||
const res = await refreshToken()
|
||||
if (res.code === 200) {
|
||||
uni.setStorageSync("token", res.data.accessToken)
|
||||
uni.setStorageSync("refreshAfter", res.data.refreshAfter)
|
||||
uni.setStorageSync("accessExpire", res.data.accessExpire)
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('刷新token失败', error)
|
||||
}
|
||||
}
|
||||
const getAgentInformation = async () => {
|
||||
const token = uni.getStorageSync("token")
|
||||
if (!token) {
|
||||
return
|
||||
}
|
||||
|
||||
try {
|
||||
const res = await getAgentInfo()
|
||||
if (res.code === 200 && res.data) {
|
||||
// 将代理信息存入缓存
|
||||
uni.setStorageSync("agentInfo", {
|
||||
level: res.data.level,
|
||||
isAgent: res.data.is_agent, // 判断是否是代理
|
||||
status: res.data.status, // 获取代理状态 0=待审核,1=审核通过,2=审核未通过,3=未申请
|
||||
agentID: res.data.agent_id,
|
||||
mobile: res.data.mobile,
|
||||
isRealName: res.data.is_real_name,
|
||||
expiryTime: res.data.expiry_time
|
||||
})
|
||||
|
||||
console.log('代理信息已获取并存入缓存')
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('获取代理信息失败', error)
|
||||
}
|
||||
}
|
||||
|
||||
const getUser = async () => {
|
||||
const token = uni.getStorageSync("token")
|
||||
if (!token) {
|
||||
return
|
||||
}
|
||||
const res = await getUserInfo()
|
||||
if (res.code === 200) {
|
||||
console.log(res.data)
|
||||
uni.setStorageSync("userInfo", res.data.userInfo)
|
||||
}
|
||||
}
|
||||
</script>
|
||||
Reference in New Issue
Block a user