Tengo una aplicación Nextjs alojada en Vercel y una API de Nestjs alojada en Railway (dos dominios diferentes), y estoy tratando de hacer que funcionen las solicitudes entre sitios. He configurado CORS y ya no me bloquea. Sin embargo, las credenciales no se pasan en la solicitud (usando axios)
Aquí está mi instancia de axios utilizada para hacer la llamada a la API
export const api = axios.create({ baseURL: apiBaseURL, responseType: "json", withCredentials: true, }); En el backend, estoy configurando la cookie de token
res.setCookie( "token", this.jwtService.sign({ id: user.id, email: user.email }), { path: "/", secure: true, sameSite: "none", httpOnly: true, } ); La cookie de token se utiliza posteriormente para autenticar la solicitud del usuario y se establece cuando el usuario se autentica con Google OAuth. El usuario elige su cuenta y es redirigido al punto final de la API /auth/redirect (Railway) que luego configura la cookie y lo redirige al front-end (Vercel)
Mi configuración CORS
app.enableCors({ origin: ["http://localhost:3000", "https://my-app.vercel.app"], credentials: true, });Cada vez que el front-end intenta llamar a un punto final de API protegido, las cookies no se envían.
Estoy usando el adaptador fastify para Nestjs.