Así que construí una aplicación que usa pasaporte y sesión rápida para su autenticación. Cuando implementé, descubrí que safari no permitía que la sesión rápida funcionara hasta que desactivé el 'seguimiento entre sitios' en su configuración. ¿Cómo hago que esto funcione?
Basado en este artículo https://sarav.co/session-persisting-issue-safari , necesito apagarlo manualmente, pero honestamente no puedo esperar que mis usuarios lo hagan manualmente.
A continuación se muestra cómo configuré mi sesión express:
app.set('trust proxy', 1); app.use(session({ secret: process.env.SESSION_SECRET, resave: false, saveUninitialized: false, cookie: { secure: true, httpOnly: true, sameSite: 'none', maxAge: 60 * 60 * 24 * 1000 }, store: MongoStore.create({ mongoUrl: process.env.DB_URL, ttl: 14 * 24 * 60 * 60, autoRemove: 'native', }) }));Use el middleware CORS con las opciones correctas desde aquí: https://expressjs.com/en/resources/middleware/cors.html