Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

218
Vistas
Next.js Obtener datos de usuario en SSR

Estoy muy confundido acerca de cómo hacer que el usuario actual con SSR obtenga algunos datos de usuario.

He estado usando la API de contexto con reaccionar, y ha estado funcionando hasta ahora, hasta que necesito SSR para obtener datos de una API. Quiero obtener la identificación de usuario actual, para poder obtener un token que esté almacenado en Firestore.

autenticación.js

 export const AuthContext = createContext(); export function AuthProvider({ children }) { const [currentUser, setCurrentUser] = useState(null); useEffect(() => { onAuthStateChanged(auth, (user) => { setCurrentUser(user); }); }, []); return ( <AuthContext.Provider value={{ currentUser }}> {children} </AuthContext.Provider> ); }

RSS

 export async function getStaticProps() { const api = { auth: "token", }; //fetch api return { props: { data, }, }; }
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Los SDK de Firebase están destinados a usarse solo en el lado del cliente, por lo que no podrá obtener el usuario actual en el lado del servidor a menos que configure una cookie. Cada vez que un usuario inicia sesión, puede llamar a su API, que creará una cookie de sesión con Firebase Admin y la configurará.

 app.post('/sessionLogin', (req, res) => { const idToken = req.body.idToken.toString(); const expiresIn = 60 * 60 * 24 * 5 * 1000; return admin .auth() .createSessionCookie(idToken, { expiresIn }) .then( (sessionCookie) => { const options = { maxAge: expiresIn, httpOnly: true, secure: true }; res.cookie('session', sessionCookie, options); res.end(JSON.stringify({ status: 'success' })); }, (error) => { res.status(401).send('UNAUTHORIZED REQUEST!'); } ); });

Puede leer la cookie de session en getServerSideProps y verificarla para obtener el UID del usuario:

 const decoded = await admin.auth().verifySessionCookie(sessionCookie)
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda