fix: login secure cookie and add diagnostic logging
This commit is contained in:
parent
ded6045fdb
commit
cc9a599aad
@ -30,7 +30,7 @@ export async function login(prevState: any, formData: FormData) {
|
|||||||
path: "/",
|
path: "/",
|
||||||
httpOnly: true,
|
httpOnly: true,
|
||||||
sameSite: "lax",
|
sameSite: "lax",
|
||||||
secure: false, // Permitir en HTTP (No Seguro) para bypass
|
secure: true, // Permitir en HTTP (No Seguro) para bypass
|
||||||
maxAge: 60 * 60 * 24 * 7,
|
maxAge: 60 * 60 * 24 * 7,
|
||||||
});
|
});
|
||||||
console.log('>>> MODO EMERGENCIA: Cookie guardada, redirigiendo a /dashboard');
|
console.log('>>> MODO EMERGENCIA: Cookie guardada, redirigiendo a /dashboard');
|
||||||
@ -51,14 +51,20 @@ export async function login(prevState: any, formData: FormData) {
|
|||||||
const session = await account.createEmailPasswordSession(email, password);
|
const session = await account.createEmailPasswordSession(email, password);
|
||||||
|
|
||||||
const cookieStore = await cookies();
|
const cookieStore = await cookies();
|
||||||
|
|
||||||
|
if (!session.secret) {
|
||||||
|
console.error('>>> LOGIN ERROR: No se recibió secret de la sesión de Appwrite');
|
||||||
|
return { error: 'Error interno: La sesión no generó un secreto válido.' };
|
||||||
|
}
|
||||||
|
|
||||||
cookieStore.set(COOKIE_NAME, session.secret, {
|
cookieStore.set(COOKIE_NAME, session.secret, {
|
||||||
path: "/",
|
path: "/",
|
||||||
httpOnly: true,
|
httpOnly: true,
|
||||||
sameSite: "lax",
|
sameSite: "lax",
|
||||||
secure: false, // Permitir en HTTP (No Seguro)
|
secure: true, // Siempre usar Secure en HTTPS
|
||||||
maxAge: 60 * 60 * 24 * 7,
|
maxAge: 60 * 60 * 24 * 7,
|
||||||
});
|
});
|
||||||
console.log('>>> LOGIN APPWRITE: Sesión creada exitosamente');
|
console.log('>>> LOGIN APPWRITE: Sesión creada exitosamente. Cooke set:', COOKIE_NAME);
|
||||||
|
|
||||||
} catch (error: any) {
|
} catch (error: any) {
|
||||||
console.error('>>> LOGIN ERROR:', error.message);
|
console.error('>>> LOGIN ERROR:', error.message);
|
||||||
|
|||||||
@ -69,12 +69,15 @@ export async function getLoggedInUser() {
|
|||||||
|
|
||||||
const sessionClient = await createSessionClient();
|
const sessionClient = await createSessionClient();
|
||||||
if (!sessionClient) {
|
if (!sessionClient) {
|
||||||
|
console.log("getLoggedInUser: No se encontró cookie de sesión o cliente inválido.");
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
return await sessionClient.account.get();
|
const user = await sessionClient.account.get();
|
||||||
} catch (error) {
|
console.log("getLoggedInUser: Sesión validada para usuario:", user.email);
|
||||||
console.error("Sesión inválida o expirada:", error);
|
return user;
|
||||||
|
} catch (error: any) {
|
||||||
|
console.error("getLoggedInUser: Error al validar sesión:", error.message || error);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user