Enhance authentication and debugging experience by adding detailed logging for cookie checks, session management, and user redirection. Update middleware to log authentication cookie status and user login state. Refactor login and debug pages to use hard redirects for improved reliability and include session data display. Implement custom cookie handling in Supabase client for better session management.
This commit is contained in:
@@ -29,12 +29,23 @@ export function middleware(request: NextRequest) {
|
||||
const allCookies = Object.fromEntries(request.cookies.getAll().map(c => [c.name, c.value]));
|
||||
console.log('[Middleware] 所有Cookie:', JSON.stringify(allCookies));
|
||||
|
||||
// 检查各个认证cookie
|
||||
const accessToken = request.cookies.get('sb-access-token');
|
||||
const refreshToken = request.cookies.get('sb-refresh-token');
|
||||
const providerToken = request.cookies.get('sb-provider-token');
|
||||
const authToken = request.cookies.get('supabase-auth-token');
|
||||
const customAuthToken = request.cookies.get('sb-auth-token');
|
||||
|
||||
console.log('[Middleware] 认证Cookie详情:', {
|
||||
'sb-access-token': accessToken ? '存在' : '不存在',
|
||||
'sb-refresh-token': refreshToken ? '存在' : '不存在',
|
||||
'sb-provider-token': providerToken ? '存在' : '不存在',
|
||||
'supabase-auth-token': authToken ? '存在' : '不存在',
|
||||
'sb-auth-token': customAuthToken ? '存在' : '不存在'
|
||||
});
|
||||
|
||||
// 检查用户是否登录
|
||||
const supabaseCookie = request.cookies.get('sb-access-token') ||
|
||||
request.cookies.get('sb-refresh-token') ||
|
||||
request.cookies.get('sb-provider-token') ||
|
||||
request.cookies.get('supabase-auth-token');
|
||||
const isLoggedIn = !!supabaseCookie;
|
||||
const isLoggedIn = !!(accessToken || refreshToken || providerToken || authToken || customAuthToken);
|
||||
console.log(`[Middleware] 用户是否登录: ${isLoggedIn}`);
|
||||
|
||||
// 如果是公开路径但已登录,重定向到首页
|
||||
|
||||
Reference in New Issue
Block a user