From 73210a869048d6468b55717660d0ca558d0c2aab Mon Sep 17 00:00:00 2001
From: wwf <1971391498@qq.com>
Date: 星期一, 24 十一月 2025 09:49:43 +0800
Subject: [PATCH] 优化
---
app/components/swr-initor.tsx | 52 ++++++++++++++++++++++++++++------------------------
1 files changed, 28 insertions(+), 24 deletions(-)
diff --git a/app/components/swr-initor.tsx b/app/components/swr-initor.tsx
index 8f9c5b4..54cbd08 100644
--- a/app/components/swr-initor.tsx
+++ b/app/components/swr-initor.tsx
@@ -4,11 +4,8 @@
import { useCallback, useEffect, useState } from 'react'
import type { ReactNode } from 'react'
import { usePathname, useRouter, useSearchParams } from 'next/navigation'
-import { fetchSetupStatus } from '@/service/common'
-import {
- EDUCATION_VERIFYING_LOCALSTORAGE_ITEM,
- EDUCATION_VERIFY_URL_SEARCHPARAMS_ACTION,
-} from '@/app/education-apply/constants'
+import { fetchSetupStatus, regAndLogin } from '@/service/common'
+import type { RegAndLoginResponse } from '@/models/common'
type SwrInitorProps = {
children: ReactNode
@@ -20,6 +17,7 @@
const searchParams = useSearchParams()
const consoleToken = decodeURIComponent(searchParams.get('access_token') || '')
const refreshToken = decodeURIComponent(searchParams.get('refresh_token') || '')
+ const userId = decodeURIComponent(searchParams.get('userId') || '')
const consoleTokenFromLocalStorage = localStorage?.getItem('console_token')
const refreshTokenFromLocalStorage = localStorage?.getItem('refresh_token')
const pathname = usePathname()
@@ -45,30 +43,36 @@
useEffect(() => {
(async () => {
- const action = searchParams.get('action')
-
- if (action === EDUCATION_VERIFY_URL_SEARCHPARAMS_ACTION)
- localStorage.setItem(EDUCATION_VERIFYING_LOCALSTORAGE_ITEM, 'yes')
-
try {
- const isFinished = await isSetupFinished()
- if (!isFinished) {
- router.replace('/install')
- return
+ let currentUserId = ''
+ if (userId) {
+ currentUserId = userId
+ localStorage.setItem('userId', userId)
}
- if (!((consoleToken && refreshToken) || (consoleTokenFromLocalStorage && refreshTokenFromLocalStorage))) {
- router.replace('/signin')
- return
+ else {
+ currentUserId = localStorage.getItem('userId') || ''
}
- if (searchParams.has('access_token') || searchParams.has('refresh_token')) {
- consoleToken && localStorage.setItem('console_token', consoleToken)
- refreshToken && localStorage.setItem('refresh_token', refreshToken)
- router.replace(pathname)
- }
-
+ const response: RegAndLoginResponse = await regAndLogin({ body: { userId: currentUserId } })
+ localStorage.setItem('console_token', response.data.access_token)
+ localStorage.setItem('refresh_token', response.data.refresh_token)
setInit(true)
+ // if (!isFinished) {
+ // router.replace('/install')
+ // return
+ // }
+ // if (!((consoleToken && refreshToken) || (consoleTokenFromLocalStorage && refreshTokenFromLocalStorage))) {
+ // router.replace('/signin')
+ // return
+ // }
+ // if (searchParams.has('access_token') || searchParams.has('refresh_token')) {
+ // consoleToken && localStorage.setItem('console_token', consoleToken)
+ // refreshToken && localStorage.setItem('refresh_token', refreshToken)
+ // router.replace(pathname)
+ // }
+
+ // setInit(true)
}
- catch {
+ catch (error) {
router.replace('/signin')
}
})()
--
Gitblit v1.8.0