修复 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 实现防抖机制 - 检查页面,为后端请求标记 wait 实现防抖机制
- 页面切换动效 - 页面切换动效
- 后台页面: - 后台页面:
- 总览 - 总览
- 提取记录 - 提取记录
- 使用记录 - 使用记录
- 检查页面请求异常处理
- 实现完整的客户端 ip 有效性检查
### 长期 ### 长期
- 检查扩大服务端组件边界 - 检查扩大服务端组件边界
- 检查 Card 替换 section 或 div - 检查 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"> <Wrap className="h-20 max-md:h-16 flex justify-between">
<div className="flex justify-between gap-8"> <div className="flex justify-between gap-8">
{/* logo */} {/* logo */}
<Link href="/public" className={`flex items-center`}> <Link href="/" className={`flex items-center`}>
<Image src={logo} alt={`logo`} height={48}/> <Image src={logo} alt={`logo`} height={48}/>
</Link> </Link>

View File

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

View File

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