修复 logo 跳转链接;修复令牌刷新问题

This commit is contained in:
2025-04-30 18:22:04 +08:00
parent 78f60c94e6
commit e910dc8f61
4 changed files with 26 additions and 24 deletions

View File

@@ -11,17 +11,18 @@
- 提取后刷新提取页套餐可用余量
- 白名单复用表格组件
- 首次登录弹窗:需要设置初始密码,展示 实名->购买->提取 的流程介绍
- 提取页表单性能优化,树组件性能优化
- 丰富账单页表格内容与样式
- 检查页面,为后端请求标记 wait 实现防抖机制
- 页面切换动效
- 后台页面:
- 总览
- 提取记录
- 使用记录
- 检查页面请求异常处理
- 实现完整的客户端 ip 有效性检查
### 长期
- 检查扩大服务端组件边界
- 检查 Card 替换 section 或 div
- 检查页面请求异常处理
- 实现完整的客户端 ip 有效性检查
- 提取页表单性能优化,树组件性能优化

View File

@@ -73,7 +73,7 @@ export default function Provider(props: ProviderProps) {
<Wrap className="h-20 max-md:h-16 flex justify-between">
<div className="flex justify-between gap-8">
{/* logo */}
<Link href="/public" className={`flex items-center`}>
<Link href="/" className={`flex items-center`}>
<Image src={logo} alt={`logo`} height={48}/>
</Link>

View File

@@ -60,7 +60,6 @@ export default function ResourcesPage(props: ResourcesPageProps) {
})
if (res.success) {
console.log(res.data)
setData(res.data)
setStatus('done')
}

View File

@@ -13,29 +13,31 @@ export async function middleware(request: NextRequest) {
// 记录请求页面
request.headers.set('x-pathname', request.nextUrl.pathname)
// 如果没有访问令牌但有刷新令牌,尝试刷新访问令牌
// 刷新访问令牌
try {
const accessToken = request.cookies.get('auth_token')
const refreshToken = request.cookies.get('auth_refresh')
if (!accessToken && !!refreshToken) {
console.log('💡 refresh token')
const token = await refreshAuth()
request.cookies.set('auth_token', token.access_token)
request.cookies.set('auth_refresh', token.refresh_token)
}
}
catch (e) {
console.log('❌ 刷新访问令牌失败', e)
}
// 没有访问令牌不允许访问 admin 页面
const match = [
RegExp(`^/admin.*`),
].some(item => item.test(request.nextUrl.pathname))
console.log('🔧 match', match, request.nextUrl.pathname)
if (match) {
try {
const accessToken = request.cookies.get('auth_token')
const refreshToken = request.cookies.get('auth_refresh')
console.log('🔧 token', !accessToken && !!refreshToken, !!accessToken, !!refreshToken)
if (!accessToken && !!refreshToken) {
console.log('💡 refresh token')
const token = await refreshAuth()
request.cookies.set('auth_token', token.access_token)
request.cookies.set('auth_refresh', token.refresh_token)
}
}
catch (error) {
console.log(error)
console.log('redirect!!!!!!!!!')
return NextResponse.redirect(`${request.nextUrl.origin}/login?redirect=${request.nextUrl.pathname}`)
}
const accessToken = request.cookies.get('auth_token')
if (match && !accessToken) {
console.log('redirect!!!!!!!!!')
return NextResponse.redirect(`${request.nextUrl.origin}/login?redirect=${request.nextUrl.pathname}`)
}
return NextResponse.next({request})