Checkpoint: Correction de l'authentification locale : utilisation de sdk.createSessionToken() au lieu de jsonwebtoken pour compatibilité avec le système OAuth

This commit is contained in:
Manus Sandbox
2025-11-23 08:50:35 -05:00
parent ccb1484839
commit 645f6f6b5f
12 changed files with 2984 additions and 12 deletions

View File

@@ -1,12 +1,11 @@
import { Router } from "express";
import bcrypt from "bcryptjs";
import jwt from "jsonwebtoken";
import { getDb } from "../db";
import { users } from "../../drizzle/schema";
import { eq } from "drizzle-orm";
import { ENV } from "./env";
import { COOKIE_NAME } from "@shared/const";
import { getSessionCookieOptions } from "./cookies";
import { sdk } from "./sdk";
const router = Router();
@@ -75,16 +74,11 @@ router.post("/login", async (req, res) => {
.set({ lastSignedIn: new Date() })
.where(eq(users.id, user.id));
// Créer le token JWT
const token = jwt.sign(
{
openId: user.openId,
name: user.name,
email: user.email,
},
ENV.jwtSecret,
{ expiresIn: "7d", algorithm: "HS256" }
);
// Créer le token de session (compatible avec le système OAuth)
const token = await sdk.createSessionToken(user.openId, {
name: user.name || "",
expiresInMs: 7 * 24 * 60 * 60 * 1000, // 7 jours
});
// Définir le cookie de session
const cookieOptions = getSessionCookieOptions(req);